diff --git a/.gitignore b/.gitignore index 9dfe3200c1b..9a8da0ee038 100644 --- a/.gitignore +++ b/.gitignore @@ -123,4 +123,6 @@ nCrunchTemp_* /tests/fsharp/core/members/set-only-property/fs.dll /tests/fsharp/core/members/set-only-property/cs.dll -.fake \ No newline at end of file +.fake +*.pdb +*.dll \ No newline at end of file diff --git a/Directory.Build.targets b/Directory.Build.targets index 7b7a6a7a80a..2fb81ff568f 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -10,7 +10,7 @@ - + diff --git a/FSharpTests.Directory.Build.props b/FSharpTests.Directory.Build.props index 9d9983693af..d191970e303 100644 --- a/FSharpTests.Directory.Build.props +++ b/FSharpTests.Directory.Build.props @@ -22,18 +22,18 @@ $([System.IO.Path]::GetDirectoryName('$(DOTNET_HOST_PATH)')) dotnet.exe dotnet - $(MSBuildThisFileDirectory)artifacts\bin\fsc\$(Configuration)\net5.0\fsc.dll + $(MSBuildThisFileDirectory)artifacts\bin\fsc\$(Configuration)\net6.0\fsc.dll $([System.IO.Path]::GetDirectoryName('$(DOTNET_HOST_PATH)')) dotnet.exe dotnet - $(MSBuildThisFileDirectory)artifacts\bin\fsi\$(Configuration)\net5.0\fsi.dll + $(MSBuildThisFileDirectory)artifacts\bin\fsi\$(Configuration)\net6.0\fsi.dll <_FSharpBuildTargetFramework Condition="'$(MSBuildRuntimeType)'!='Core'">net472 - <_FSharpBuildTargetFramework Condition="'$(MSBuildRuntimeType)'=='Core'">net5.0 + <_FSharpBuildTargetFramework Condition="'$(MSBuildRuntimeType)'=='Core'">net6.0 <_FSharpBuildBinPath>$(MSBuildThisFileDirectory)artifacts\bin\fsc\$(Configuration)\$(_FSharpBuildTargetFramework) $(_FSharpBuildBinPath)\FSharp.Build.dll diff --git a/VisualFSharp.sln b/VisualFSharp.sln index cfcafe7be08..c0844e44536 100644 --- a/VisualFSharp.sln +++ b/VisualFSharp.sln @@ -128,8 +128,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PEVerify", "tests\fsharpqa\ EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "FSharp.PatternMatcher", "vsintegration\src\FSharp.PatternMatcher\FSharp.PatternMatcher.csproj", "{18227628-DF90-4C47-AF3D-CC72D2EDD986}" EndProject -Project("{6EC3EE1D-3C4E-46DD-8F32-0CC8E7565705}") = "GetTypesVS.UnitTests", "vsintegration\tests\GetTypesVS.UnitTests\GetTypesVS.UnitTests.fsproj", "{6D93CEBD-4540-4D96-A153-B440A661FD09}" -EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Setup", "Setup", "{6235B3AF-774D-4EA1-8F37-789E767F6368}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.FSharp.Compiler.MSBuild", "setup\Swix\Microsoft.FSharp.Compiler.MSBuild\Microsoft.FSharp.Compiler.MSBuild.csproj", "{4CBEE353-EB7F-4A47-988B-0070AEB4EE7A}" @@ -768,18 +766,6 @@ Global {18227628-DF90-4C47-AF3D-CC72D2EDD986}.Release|Any CPU.Build.0 = Release|Any CPU {18227628-DF90-4C47-AF3D-CC72D2EDD986}.Release|x86.ActiveCfg = Release|Any CPU {18227628-DF90-4C47-AF3D-CC72D2EDD986}.Release|x86.Build.0 = Release|Any CPU - {6D93CEBD-4540-4D96-A153-B440A661FD09}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {6D93CEBD-4540-4D96-A153-B440A661FD09}.Debug|Any CPU.Build.0 = Debug|Any CPU - {6D93CEBD-4540-4D96-A153-B440A661FD09}.Debug|x86.ActiveCfg = Debug|Any CPU - {6D93CEBD-4540-4D96-A153-B440A661FD09}.Debug|x86.Build.0 = Debug|Any CPU - {6D93CEBD-4540-4D96-A153-B440A661FD09}.Proto|Any CPU.ActiveCfg = Release|Any CPU - {6D93CEBD-4540-4D96-A153-B440A661FD09}.Proto|Any CPU.Build.0 = Release|Any CPU - {6D93CEBD-4540-4D96-A153-B440A661FD09}.Proto|x86.ActiveCfg = Release|Any CPU - {6D93CEBD-4540-4D96-A153-B440A661FD09}.Proto|x86.Build.0 = Release|Any CPU - {6D93CEBD-4540-4D96-A153-B440A661FD09}.Release|Any CPU.ActiveCfg = Release|Any CPU - {6D93CEBD-4540-4D96-A153-B440A661FD09}.Release|Any CPU.Build.0 = Release|Any CPU - {6D93CEBD-4540-4D96-A153-B440A661FD09}.Release|x86.ActiveCfg = Release|Any CPU - {6D93CEBD-4540-4D96-A153-B440A661FD09}.Release|x86.Build.0 = Release|Any CPU {4CBEE353-EB7F-4A47-988B-0070AEB4EE7A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {4CBEE353-EB7F-4A47-988B-0070AEB4EE7A}.Debug|Any CPU.Build.0 = Debug|Any CPU {4CBEE353-EB7F-4A47-988B-0070AEB4EE7A}.Debug|x86.ActiveCfg = Debug|Any CPU @@ -1078,7 +1064,6 @@ Global {400FAB03-786E-40CC-85A8-04B0C2869B14} = {CFE3259A-2D30-4EB0-80D5-E8B5F3D01449} {B0689A4E-07D8-494D-A0C8-791CB1D74E54} = {CFE3259A-2D30-4EB0-80D5-E8B5F3D01449} {18227628-DF90-4C47-AF3D-CC72D2EDD986} = {4C7B48D7-19AF-4AE7-9D1D-3BB289D5480D} - {6D93CEBD-4540-4D96-A153-B440A661FD09} = {F7876C9B-FB6A-4EFB-B058-D6967DB75FB2} {4CBEE353-EB7F-4A47-988B-0070AEB4EE7A} = {6235B3AF-774D-4EA1-8F37-789E767F6368} {6BCFED7A-3F67-4180-B307-C7D69D191D8C} = {6235B3AF-774D-4EA1-8F37-789E767F6368} {E93E7D28-1C6B-4E04-BE83-68428CF7E039} = {6235B3AF-774D-4EA1-8F37-789E767F6368} diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 93003652a8e..5d7e0522bdf 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -255,7 +255,8 @@ stages: # Mock official build - job: MockOfficial pool: - vmImage: windows-latest + name: NetCore1ESPool-Svc-Public + demands: ImageOverride -equals $(WindowsMachineQueueName) steps: - checkout: self clean: true @@ -265,7 +266,7 @@ stages: # Linux - job: Linux pool: - vmImage: ubuntu-latest + vmImage: $(UbuntuMachineQueueName) variables: - name: _SignType value: Test @@ -305,7 +306,7 @@ stages: # MacOS - job: MacOS pool: - vmImage: macOS-latest + vmImage: $(MacOSMachineQueueName) variables: - name: _SignType value: Test @@ -345,7 +346,8 @@ stages: # End to end build - job: EndToEndBuildTests pool: - vmImage: windows-latest + name: NetCore1ESPool-Svc-Public + demands: ImageOverride -equals $(WindowsMachineQueueName) steps: - checkout: self clean: true @@ -360,7 +362,8 @@ stages: - name: _SignType value: Test pool: - vmImage: windows-latest + name: NetCore1ESPool-Svc-Public + demands: ImageOverride -equals $(WindowsMachineQueueName) timeoutInMinutes: 90 steps: - checkout: self @@ -391,7 +394,8 @@ stages: # Plain build Windows - job: Plain_Build_Windows pool: - vmImage: windows-latest + name: NetCore1ESPool-Svc-Public + demands: ImageOverride -equals $(WindowsMachineQueueName) variables: - name: _BuildConfig value: Debug @@ -423,7 +427,7 @@ stages: # Plain build Linux - job: Plain_Build_Linux pool: - vmImage: ubuntu-latest + vmImage: $(UbuntuMachineQueueName) variables: - name: _BuildConfig value: Debug @@ -455,7 +459,7 @@ stages: # Plain build Mac - job: Plain_Build_MacOS pool: - vmImage: macos-latest + vmImage: $(MacOSMachineQueueName) variables: - name: _BuildConfig value: Debug diff --git a/eng/Build.ps1 b/eng/Build.ps1 index f88e3ea1155..6d2787dbfd6 100644 --- a/eng/Build.ps1 +++ b/eng/Build.ps1 @@ -179,11 +179,11 @@ function Process-Arguments() { function Update-Arguments() { if ($script:noVisualStudio) { - $script:bootstrapTfm = "net5.0" + $script:bootstrapTfm = "net6.0" $script:msbuildEngine = "dotnet" } - if ($bootstrapTfm -eq "net5.0") { + if ($bootstrapTfm -eq "net6.0") { if (-Not (Test-Path "$ArtifactsDir\Bootstrap\fsc\fsc.runtimeconfig.json")) { $script:bootstrap = $True } @@ -204,7 +204,7 @@ function BuildSolution([string] $solutionName) { $officialBuildId = if ($official) { $env:BUILD_BUILDNUMBER } else { "" } $toolsetBuildProj = InitializeToolset $quietRestore = !$ci - $testTargetFrameworks = if ($testCoreClr) { "net5.0" } else { "" } + $testTargetFrameworks = if ($testCoreClr) { "net6.0" } else { "" } # Do not set the property to true explicitly, since that would override value projects might set. $suppressExtensionDeployment = if (!$deployExtensions) { "/p:DeployExtension=false" } else { "" } @@ -477,7 +477,7 @@ try { $script:BuildCategory = "Test" $script:BuildMessage = "Failure running tests" $desktopTargetFramework = "net472" - $coreclrTargetFramework = "net5.0" + $coreclrTargetFramework = "net6.0" if ($testDesktop) { TestUsingXUnit -testProject "$RepoRoot\tests\FSharp.Compiler.ComponentTests\FSharp.Compiler.ComponentTests.fsproj" -targetFramework $desktopTargetFramework -testadapterpath "$ArtifactsDir\bin\FSharp.Compiler.ComponentTests\" -noTestFilter $true @@ -545,15 +545,14 @@ try { TestUsingNUnit -testProject "$RepoRoot\tests\fsharp\FSharpSuite.Tests.fsproj" -targetFramework $desktopTargetFramework -testadapterpath "$ArtifactsDir\bin\FSharpSuite.Tests\" TestUsingNUnit -testProject "$RepoRoot\tests\fsharp\FSharpSuite.Tests.fsproj" -targetFramework $coreclrTargetFramework -testadapterpath "$ArtifactsDir\bin\FSharpSuite.Tests\" } -` - if ($testScripting) { + + if ($testScripting) { TestUsingXUnit -testProject "$RepoRoot\tests\FSharp.Compiler.Private.Scripting.UnitTests\FSharp.Compiler.Private.Scripting.UnitTests.fsproj" -targetFramework $desktopTargetFramework -testadapterpath "$ArtifactsDir\bin\FSharp.Compiler.Private.Scripting.UnitTests\" TestUsingXUnit -testProject "$RepoRoot\tests\FSharp.Compiler.Private.Scripting.UnitTests\FSharp.Compiler.Private.Scripting.UnitTests.fsproj" -targetFramework $coreclrTargetFramework -testadapterpath "$ArtifactsDir\bin\FSharp.Compiler.Private.Scripting.UnitTests\" } if ($testVs -and -not $noVisualStudio) { - TestUsingNUnit -testProject "$RepoRoot\vsintegration\tests\GetTypesVS.UnitTests\GetTypesVS.UnitTests.fsproj" -targetFramework $desktopTargetFramework -testadapterpath "$ArtifactsDir\bin\GetTypesVS.UnitTests" - TestUsingNUnit -testProject "$RepoRoot\vsintegration\tests\UnitTests\VisualFSharp.UnitTests.fsproj" -targetFramework $desktopTargetFramework -testadapterpath "$ArtifactsDir\bin\VisualFSharp.UnitTests" + TestUsingNUnit -testProject "$RepoRoot\vsintegration\tests\UnitTests\VisualFSharp.UnitTests.fsproj" -targetFramework $desktopTargetFramework -testadapterpath "$ArtifactsDir\bin\VisualFSharp.UnitTests\" } # verify nupkgs have access to the source code diff --git a/eng/DumpPackageRoot/DumpPackageRoot.csproj b/eng/DumpPackageRoot/DumpPackageRoot.csproj index 0c94f0a999c..fb030a52306 100644 --- a/eng/DumpPackageRoot/DumpPackageRoot.csproj +++ b/eng/DumpPackageRoot/DumpPackageRoot.csproj @@ -3,7 +3,7 @@ - net5.0 + net6.0 diff --git a/eng/Versions.props b/eng/Versions.props index 5eb2504da56..b6fdb3e2883 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -144,12 +144,12 @@ 2.0.28 $(RoslynVersion) - 16.11 + 17.0.0 $(MicrosoftBuildOverallPackagesVersion) $(MicrosoftBuildOverallPackagesVersion) $(MicrosoftBuildOverallPackagesVersion) $(MicrosoftBuildOverallPackagesVersion) - 17.0.2136-preview2 + 17.1.4054 $(VisualStudioImplementationPackagesVersion) $(VisualStudioImplementationPackagesVersion) @@ -207,7 +207,7 @@ 3.1.0 5.0.0-preview.7.20364.11 5.0.0-preview.7.20364.11 - 16.6.1 + 16.11.0 4.3.0 12.0.2 3.13.2 @@ -216,6 +216,8 @@ 1.0.0-beta2-dev3 2.8.3-alpha 2.4.1 + 2.4.2 5.10.3 + 2.2.0 diff --git a/eng/build-utils.ps1 b/eng/build-utils.ps1 index 055ddb7a5b6..cc9a68c98db 100644 --- a/eng/build-utils.ps1 +++ b/eng/build-utils.ps1 @@ -251,9 +251,9 @@ function Make-BootstrapBuild() { } Exec-Console $dotnetExe $args - Copy-Item "$ArtifactsDir\bin\fslex\$bootstrapConfiguration\net5.0" -Destination "$dir\fslex" -Force -Recurse - Copy-Item "$ArtifactsDir\bin\fsyacc\$bootstrapConfiguration\net5.0" -Destination "$dir\fsyacc" -Force -Recurse - Copy-Item "$ArtifactsDir\bin\AssemblyCheck\$bootstrapConfiguration\net5.0" -Destination "$dir\AssemblyCheck" -Force -Recurse + Copy-Item "$ArtifactsDir\bin\fslex\$bootstrapConfiguration\net6.0" -Destination "$dir\fslex" -Force -Recurse + Copy-Item "$ArtifactsDir\bin\fsyacc\$bootstrapConfiguration\net6.0" -Destination "$dir\fsyacc" -Force -Recurse + Copy-Item "$ArtifactsDir\bin\AssemblyCheck\$bootstrapConfiguration\net6.0" -Destination "$dir\AssemblyCheck" -Force -Recurse # prepare compiler $protoProject = "`"$RepoRoot\proto.proj`"" diff --git a/eng/build.sh b/eng/build.sh index 6af4222371d..dcf77ccf66b 100755 --- a/eng/build.sh +++ b/eng/build.sh @@ -257,8 +257,8 @@ function BuildSolution { /p:Configuration=$bootstrap_config mkdir -p "$bootstrap_dir" - cp -pr $artifacts_dir/bin/fslex/$bootstrap_config/net5.0 $bootstrap_dir/fslex - cp -pr $artifacts_dir/bin/fsyacc/$bootstrap_config/net5.0 $bootstrap_dir/fsyacc + cp -pr $artifacts_dir/bin/fslex/$bootstrap_config/net6.0 $bootstrap_dir/fslex + cp -pr $artifacts_dir/bin/fsyacc/$bootstrap_config/net6.0 $bootstrap_dir/fsyacc fi if [ ! -f "$bootstrap_dir/fsc.exe" ]; then BuildMessage="Error building bootstrap" @@ -266,7 +266,7 @@ function BuildSolution { /restore \ /p:Configuration=$bootstrap_config - cp -pr $artifacts_dir/bin/fsc/$bootstrap_config/net5.0 $bootstrap_dir/fsc + cp -pr $artifacts_dir/bin/fsc/$bootstrap_config/net6.0 $bootstrap_dir/fsc fi fi @@ -309,7 +309,7 @@ InitializeDotNetCli $restore BuildSolution if [[ "$test_core_clr" == true ]]; then - coreclrtestframework=net5.0 + coreclrtestframework=net6.0 TestUsingNUnit --testproject "$repo_root/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj" --targetframework $coreclrtestframework --notestfilter TestUsingNUnit --testproject "$repo_root/tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.Tests.fsproj" --targetframework $coreclrtestframework --notestfilter TestUsingNUnit --testproject "$repo_root/tests/FSharp.Compiler.UnitTests/FSharp.Compiler.UnitTests.fsproj" --targetframework $coreclrtestframework diff --git a/eng/test-determinism.ps1 b/eng/test-determinism.ps1 index 0356303cd01..024fe3a605a 100644 --- a/eng/test-determinism.ps1 +++ b/eng/test-determinism.ps1 @@ -379,7 +379,7 @@ try { $script:bootstrapTfm = "net472" if ($script:msbuildEngine -eq "dotnet") { - $script.bootstrapTfm = "net5.0" + $script.bootstrapTfm = "net6.0" } $bootstrapDir = Make-BootstrapBuild diff --git a/fcs-samples/EditorService/EditorService.fsproj b/fcs-samples/EditorService/EditorService.fsproj index 27bdbef249c..70459553b3f 100644 --- a/fcs-samples/EditorService/EditorService.fsproj +++ b/fcs-samples/EditorService/EditorService.fsproj @@ -1,7 +1,7 @@  - $(FcsTargetNetFxFramework);net5.0 + $(FcsTargetNetFxFramework);net6.0 true Exe false diff --git a/global.json b/global.json index 949c7819186..837b3762ad5 100644 --- a/global.json +++ b/global.json @@ -1,11 +1,11 @@ { "sdk": { - "version": "6.0.100", + "version": "6.0.200", "allowPrerelease": true, "rollForward": "minor" }, "tools": { - "dotnet": "6.0.100", + "dotnet": "6.0.200", "vs": { "version": "16.8", "components": [ diff --git a/proto.proj b/proto.proj index bb077834555..7f24e53a1ab 100644 --- a/proto.proj +++ b/proto.proj @@ -10,10 +10,10 @@ TargetFramework=netstandard2.0 - TargetFramework=net5.0 + TargetFramework=net6.0 - TargetFramework=net5.0 + TargetFramework=net6.0 diff --git a/src/buildtools/AssemblyCheck/AssemblyCheck.fsproj b/src/buildtools/AssemblyCheck/AssemblyCheck.fsproj index 881d4e4fbc0..a7fceb6f70c 100644 --- a/src/buildtools/AssemblyCheck/AssemblyCheck.fsproj +++ b/src/buildtools/AssemblyCheck/AssemblyCheck.fsproj @@ -2,7 +2,7 @@ Exe - net5.0 + net6.0 true false diff --git a/src/buildtools/fslex/fslex.fsproj b/src/buildtools/fslex/fslex.fsproj index 3d63bf6bf25..e3ef463ad59 100644 --- a/src/buildtools/fslex/fslex.fsproj +++ b/src/buildtools/fslex/fslex.fsproj @@ -2,7 +2,7 @@ Exe - net5.0 + net6.0 INTERNALIZED_FSLEXYACC_RUNTIME;$(DefineConstants) true false diff --git a/src/buildtools/fsyacc/fsyacc.fsproj b/src/buildtools/fsyacc/fsyacc.fsproj index 63b63c5dee0..554fea25d47 100644 --- a/src/buildtools/fsyacc/fsyacc.fsproj +++ b/src/buildtools/fsyacc/fsyacc.fsproj @@ -2,7 +2,7 @@ Exe - net5.0 + net6.0 INTERNALIZED_FSLEXYACC_RUNTIME;$(DefineConstants) true false diff --git a/src/fsharp/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.Utilities.fs b/src/fsharp/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.Utilities.fs index 98dc44fb6c5..6bb67d8a17b 100644 --- a/src/fsharp/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.Utilities.fs +++ b/src/fsharp/FSharp.DependencyManager.Nuget/FSharp.DependencyManager.Utilities.fs @@ -130,27 +130,46 @@ module internal Utilities = sprintf "%s -restore %s %c%s%c /nologo /t:InteractivePackageManagement" prefix binLoggingArguments '\"' projectPath '\"' let workingDir = Path.GetDirectoryName projectPath - + let dotnetHostPath = getDotnetHostPath() + let args = arguments "msbuild -v:quiet" let success, stdOut, stdErr = - executeTool (getDotnetHostPath()) (arguments "msbuild -v:quiet") workingDir timeout + executeTool dotnetHostPath args workingDir timeout #if DEBUG + let diagnostics = + [| + $"workingDir: {workingDir}" + $"dotnetHostPath: {dotnetHostPath}" + $"arguments: {args}" + |] + File.WriteAllLines(Path.Combine(workingDir, "build_CommandLine.txt"), diagnostics) File.WriteAllLines(Path.Combine(workingDir, "build_StandardOutput.txt"), stdOut) File.WriteAllLines(Path.Combine(workingDir, "build_StandardError.txt"), stdErr) #endif let outputFile = projectPath + ".resolvedReferences.paths" let resolutionsFile = if success && File.Exists(outputFile) then Some outputFile else None - { success = success - projectPath = projectPath - stdOut = stdOut - stdErr = stdErr - resolutionsFile = resolutionsFile } + { + success = success + projectPath = projectPath + stdOut = stdOut + stdErr = stdErr + resolutionsFile = resolutionsFile + } let generateSourcesFromNugetConfigs scriptDirectory workingDir timeout = + let dotnetHostPath = getDotnetHostPath() + let args = "nuget list source --format short" let success, stdOut, stdErr = - executeTool (getDotnetHostPath()) "nuget list source --format short" scriptDirectory timeout + executeTool dotnetHostPath args scriptDirectory timeout #if DEBUG + let diagnostics = + [| + $"scriptDirectory: {scriptDirectory}" + $"dotnetHostPath: {dotnetHostPath}" + $"arguments: {args}" + |] + File.WriteAllLines(Path.Combine(workingDir, "nuget_CommandLine.txt"), diagnostics) File.WriteAllLines(Path.Combine(workingDir, "nuget_StandardOutput.txt"), stdOut) File.WriteAllLines(Path.Combine(workingDir, "nuget_StandardError.txt"), stdErr) #else diff --git a/src/fsharp/FxResolver.fs b/src/fsharp/FxResolver.fs index adc3b59417d..a24b3149c5c 100644 --- a/src/fsharp/FxResolver.fs +++ b/src/fsharp/FxResolver.fs @@ -356,8 +356,8 @@ type internal FxResolver(assumeDotNetFramework: bool, projectDir: string, useSdk | -1, _ | _, -1 -> if isRunningOnCoreClr then - // Running on coreclr but no deps.json was deployed with the host so default to 5.0 - Some "net5.0" + // Running on coreclr but no deps.json was deployed with the host so default to 6.0 + Some "net6.0" else // Running on desktop None diff --git a/src/fsharp/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.csproj b/src/fsharp/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.csproj index 845851b0fd4..eaeac80f362 100644 --- a/src/fsharp/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.csproj +++ b/src/fsharp/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.csproj @@ -3,7 +3,7 @@ true Exe - net5.0 + net6.0 Microsoft.FSharp.Compiler.nuspec true .NET Core compatible version of the F# compiler fsc.exe. diff --git a/src/fsharp/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.nuspec b/src/fsharp/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.nuspec index 04642f47ab8..df8fff6e019 100644 --- a/src/fsharp/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.nuspec +++ b/src/fsharp/Microsoft.FSharp.Compiler/Microsoft.FSharp.Compiler.nuspec @@ -4,7 +4,7 @@ $CommonMetadataElements$ en-US - + @@ -26,16 +26,16 @@ this approach gives a very small deployment. Which is kind of necessary. --> - - - - - - + + + + + + + target="lib\net6.0" /> + target="lib\net6.0" /> @@ -46,14 +46,14 @@ - + + target="lib\net6.0" /> - + target="lib\net6.0" /> + + target="lib\net6.0" /> Exe $(ProtoTargetFramework) - net472;net5.0 - net5.0 + net472;net6.0 + net6.0 $(NoWarn);44 $(NoWarn);75 true diff --git a/src/fsharp/fsi/fsi.fsproj b/src/fsharp/fsi/fsi.fsproj index f8928b40b57..39cacc086b5 100644 --- a/src/fsharp/fsi/fsi.fsproj +++ b/src/fsharp/fsi/fsi.fsproj @@ -5,8 +5,8 @@ Exe $(ProtoTargetFramework) - net472;net5.0 - net5.0 + net472;net6.0 + net6.0 $(NoWarn);44 true $(OtherFlags) --warnon:1182 @@ -47,7 +47,7 @@ - + diff --git a/tests/EndToEndBuildTests/BasicProvider/BasicProvider.DesignTime/BasicProvider.DesignTime.fsproj b/tests/EndToEndBuildTests/BasicProvider/BasicProvider.DesignTime/BasicProvider.DesignTime.fsproj index 688fef5eda6..40a1d338863 100644 --- a/tests/EndToEndBuildTests/BasicProvider/BasicProvider.DesignTime/BasicProvider.DesignTime.fsproj +++ b/tests/EndToEndBuildTests/BasicProvider/BasicProvider.DesignTime/BasicProvider.DesignTime.fsproj @@ -2,7 +2,7 @@ Library - net5.0;net472 + net6.0;net472 typeproviders NO_GENERATIVE IS_DESIGNTIME diff --git a/tests/EndToEndBuildTests/BasicProvider/BasicProvider.Tests/BasicProvider.Tests.fsproj b/tests/EndToEndBuildTests/BasicProvider/BasicProvider.Tests/BasicProvider.Tests.fsproj index 5740511daa6..0c0b7bf1599 100644 --- a/tests/EndToEndBuildTests/BasicProvider/BasicProvider.Tests/BasicProvider.Tests.fsproj +++ b/tests/EndToEndBuildTests/BasicProvider/BasicProvider.Tests/BasicProvider.Tests.fsproj @@ -2,7 +2,7 @@ Library - net5.0 + net6.0 $(TestTargetFramework) false NO_GENERATIVE diff --git a/tests/EndToEndBuildTests/BasicProvider/BasicProvider/BasicProvider.fsproj b/tests/EndToEndBuildTests/BasicProvider/BasicProvider/BasicProvider.fsproj index 6d5aac4656a..1de65f297f7 100644 --- a/tests/EndToEndBuildTests/BasicProvider/BasicProvider/BasicProvider.fsproj +++ b/tests/EndToEndBuildTests/BasicProvider/BasicProvider/BasicProvider.fsproj @@ -2,7 +2,7 @@ Library - net5.0;net472 + net6.0;net472 typeproviders $(FSharpCoreShippedPackageVersionValue) typeproviders diff --git a/tests/EndToEndBuildTests/BasicProvider/TestBasicProvider.cmd b/tests/EndToEndBuildTests/BasicProvider/TestBasicProvider.cmd index 2abd059cc48..f7323c64e3c 100644 --- a/tests/EndToEndBuildTests/BasicProvider/TestBasicProvider.cmd +++ b/tests/EndToEndBuildTests/BasicProvider/TestBasicProvider.cmd @@ -42,8 +42,8 @@ echo dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuratio dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net472 -p:FSharpTestCompilerVersion=net40 if ERRORLEVEL 1 echo Error: TestBasicProvider failed && goto :failure -echo dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net5.0 -p:FSharpTestCompilerVersion=coreclr - dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net5.0 -p:FSharpTestCompilerVersion=coreclr +echo dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net6.0 -p:FSharpTestCompilerVersion=coreclr + dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net6.0 -p:FSharpTestCompilerVersion=coreclr if ERRORLEVEL 1 echo Error: TestBasicProvider failed && goto :failure rem @@ -60,8 +60,8 @@ echo dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuratio dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net472 -p:FSharpTestCompilerVersion=net40 if ERRORLEVEL 1 echo Error: TestBasicProvider failed && goto :failure -echo dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net5.0 -p:FSharpTestCompilerVersion=coreclr - dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net5.0 -p:FSharpTestCompilerVersion=coreclr +echo dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net6.0 -p:FSharpTestCompilerVersion=coreclr + dotnet test BasicProvider.Tests\BasicProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net6.0 -p:FSharpTestCompilerVersion=coreclr if ERRORLEVEL 1 echo Error: TestBasicProvider failed && goto :failure :success diff --git a/tests/EndToEndBuildTests/ComboProvider/ComboProvider.Tests/ComboProvider.Tests.fsproj b/tests/EndToEndBuildTests/ComboProvider/ComboProvider.Tests/ComboProvider.Tests.fsproj index 87180cdecf8..ca6383066e8 100644 --- a/tests/EndToEndBuildTests/ComboProvider/ComboProvider.Tests/ComboProvider.Tests.fsproj +++ b/tests/EndToEndBuildTests/ComboProvider/ComboProvider.Tests/ComboProvider.Tests.fsproj @@ -2,7 +2,7 @@ Library - net5.0 + net6.0 $(TestTargetFramework) false $(FSharpCoreShippedPackageVersionValue) diff --git a/tests/EndToEndBuildTests/ComboProvider/ComboProvider/ComboProvider.fsproj b/tests/EndToEndBuildTests/ComboProvider/ComboProvider/ComboProvider.fsproj index ab9487ca0eb..9fd278953c4 100644 --- a/tests/EndToEndBuildTests/ComboProvider/ComboProvider/ComboProvider.fsproj +++ b/tests/EndToEndBuildTests/ComboProvider/ComboProvider/ComboProvider.fsproj @@ -2,9 +2,9 @@ Library - net5.0;net472 + net6.0;net472 $(FSharpCoreShippedPackageVersionValue) - net5.0;net472 + net6.0;net472 diff --git a/tests/EndToEndBuildTests/ComboProvider/TestComboProvider.cmd b/tests/EndToEndBuildTests/ComboProvider/TestComboProvider.cmd index f14f2685652..fc72e514487 100644 --- a/tests/EndToEndBuildTests/ComboProvider/TestComboProvider.cmd +++ b/tests/EndToEndBuildTests/ComboProvider/TestComboProvider.cmd @@ -42,8 +42,8 @@ echo dotnet test ComboProvider.Tests\ComboProvider.Tests.fsproj -c %configuratio dotnet test ComboProvider.Tests\ComboProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net472 -p:FSharpTestCompilerVersion=net40 if ERRORLEVEL 1 echo Error: TestComboProvider failed && goto :failure -echo dotnet test ComboProvider.Tests\ComboProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net5.0 -p:FSharpTestCompilerVersion=coreclr - dotnet test ComboProvider.Tests\ComboProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net5.0 -p:FSharpTestCompilerVersion=coreclr +echo dotnet test ComboProvider.Tests\ComboProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net6.0 -p:FSharpTestCompilerVersion=coreclr + dotnet test ComboProvider.Tests\ComboProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net6.0 -p:FSharpTestCompilerVersion=coreclr if ERRORLEVEL 1 echo Error: TestComboProvider failed && goto :failure rem @@ -60,8 +60,8 @@ echo dotnet test ComboProvider.Tests\ComboProvider.Tests.fsproj -c %configuratio dotnet test ComboProvider.Tests\ComboProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net472 -p:FSharpTestCompilerVersion=net40 if ERRORLEVEL 1 echo Error: TestComboProvider failed && goto :failure -echo dotnet test ComboProvider.Tests\ComboProvider.Tests.fsproj -v %configuration% -p:TestTargetFramework=net5.0 -p:FSharpTestCompilerVersion=coreclr - dotnet test ComboProvider.Tests\ComboProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net5.0 -p:FSharpTestCompilerVersion=coreclr +echo dotnet test ComboProvider.Tests\ComboProvider.Tests.fsproj -v %configuration% -p:TestTargetFramework=net6.0 -p:FSharpTestCompilerVersion=coreclr + dotnet test ComboProvider.Tests\ComboProvider.Tests.fsproj -c %configuration% -v minimal -p:TestTargetFramework=net6.0 -p:FSharpTestCompilerVersion=coreclr if ERRORLEVEL 1 echo Error: TestComboProvider failed && goto :failure :success diff --git a/tests/FSharp.Build.UnitTests/FSharp.Build.UnitTests.fsproj b/tests/FSharp.Build.UnitTests/FSharp.Build.UnitTests.fsproj index 2572d28cc62..b9be2d943e5 100644 --- a/tests/FSharp.Build.UnitTests/FSharp.Build.UnitTests.fsproj +++ b/tests/FSharp.Build.UnitTests/FSharp.Build.UnitTests.fsproj @@ -3,8 +3,8 @@ - net472;net5.0 - net5.0 + net472;net6.0 + net6.0 Library true nunit diff --git a/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj b/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj index b4fd920536c..461cdbb4924 100644 --- a/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj +++ b/tests/FSharp.Compiler.ComponentTests/FSharp.Compiler.ComponentTests.fsproj @@ -1,23 +1,22 @@  + - net472;net5.0 - net5.0 + net472;net6.0 + net6.0 Library + false true + xunit + true + true false false $(OtherFlags) --warnon:1182 - xunit $(NoWarn);FS0988 - - - - - @@ -106,6 +105,10 @@ + + + + diff --git a/tests/FSharp.Compiler.Private.Scripting.UnitTests/DependencyManagerInteractiveTests.fs b/tests/FSharp.Compiler.Private.Scripting.UnitTests/DependencyManagerInteractiveTests.fs index ade8a343b41..56685626162 100644 --- a/tests/FSharp.Compiler.Private.Scripting.UnitTests/DependencyManagerInteractiveTests.fs +++ b/tests/FSharp.Compiler.Private.Scripting.UnitTests/DependencyManagerInteractiveTests.fs @@ -88,7 +88,7 @@ type DependencyManagerInteractiveTests() = Assert.Equal(1, result.SourceFiles |> Seq.length) Assert.Equal(2, result.Roots |> Seq.length) - let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net5.0") + let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net6.0") Assert.Equal(true, result.Success) Assert.Equal(1, result.Resolutions |> Seq.length) Assert.Equal(1, result.SourceFiles |> Seq.length) @@ -110,7 +110,7 @@ type DependencyManagerInteractiveTests() = let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget") - let result = dp.Resolve(idm, ".fsx", [|"r", "Microsoft.Data.Sqlite, 3.1.8"|], reportError, "net5.0") + let result = dp.Resolve(idm, ".fsx", [|"r", "Microsoft.Data.Sqlite, 3.1.8"|], reportError, "net6.0") Assert.Equal(true, result.Success) Assert.True((result.Resolutions |> Seq.length) > 1) Assert.Equal(1, result.SourceFiles |> Seq.length) @@ -140,7 +140,7 @@ type DependencyManagerInteractiveTests() = Assert.Equal(0, result.SourceFiles |> Seq.length) Assert.Equal(0, result.Roots |> Seq.length) - let result = dp.Resolve(idm, ".fsx", [|"r", "System.Collections.Immutable.DoesNotExist"|], reportError, "net5.0") + let result = dp.Resolve(idm, ".fsx", [|"r", "System.Collections.Immutable.DoesNotExist"|], reportError, "net6.0") Assert.Equal(false, result.Success) Assert.Equal(0, result.Resolutions |> Seq.length) Assert.Equal(0, result.SourceFiles |> Seq.length) @@ -173,7 +173,7 @@ type DependencyManagerInteractiveTests() = Assert.True((result1.Roots |> Seq.head).EndsWith("/fsharp.data/3.3.3/")) Assert.True((result1.Roots |> Seq.last).EndsWith("/microsoft.netframework.referenceassemblies/1.0.0/")) - let result2 = dp1.Resolve(idm1, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net5.0") + let result2 = dp1.Resolve(idm1, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net6.0") Assert.Equal(true, result2.Success) Assert.Equal(1, result2.Resolutions |> Seq.length) let expected2 = "/netstandard2.0/" @@ -194,7 +194,7 @@ type DependencyManagerInteractiveTests() = Assert.Equal(1, result3.SourceFiles |> Seq.length) Assert.True((result3.Roots |> Seq.head).EndsWith("/system.json/4.6.0/")) - let result4 = dp2.Resolve(idm2, ".fsx", [|"r", "System.Json, Version=4.6.0"|], reportError, "net5.0") + let result4 = dp2.Resolve(idm2, ".fsx", [|"r", "System.Json, Version=4.6.0"|], reportError, "net6.0") Assert.Equal(true, result4.Success) Assert.Equal(1, result4.Resolutions |> Seq.length) let expected4 = "/netstandard2.0/" @@ -230,7 +230,7 @@ type DependencyManagerInteractiveTests() = // Netstandard gets fewer dependencies than desktop, because desktop framework doesn't contain assemblies like System.Memory // Those assemblies must be delivered by nuget for desktop apps - let result2 = dp1.Resolve(idm1, ".fsx", [|"r", "Microsoft.Extensions.Configuration.Abstractions, 3.1.1"|], reportError, "net5.0") + let result2 = dp1.Resolve(idm1, ".fsx", [|"r", "Microsoft.Extensions.Configuration.Abstractions, 3.1.1"|], reportError, "net6.0") Assert.Equal(true, result2.Success) Assert.Equal(2, result2.Resolutions |> Seq.length) let expected = "/netcoreapp3.1/" @@ -287,7 +287,7 @@ TorchSharp.Tensor.LongTensor.From([| 0L .. 100L |]).Device let result = use dp = new DependencyProvider(AssemblyResolutionProbe(assemblyProbingPaths), NativeResolutionProbe(nativeProbingRoots)) let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget") - dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net5.0") + dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net6.0") Assert.True(result.Success, "resolve failed") @@ -383,7 +383,7 @@ printfn ""%A"" result let result = use dp = new DependencyProvider(NativeResolutionProbe(nativeProbingRoots)) let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget") - dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net5.0") + dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net6.0") Assert.True(result.Success, "resolve failed") @@ -464,7 +464,7 @@ printfn ""%A"" result let result = use dp = new DependencyProvider(NativeResolutionProbe(nativeProbingRoots)) let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget") - dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net5.0") + dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net6.0") Assert.True(result.Success, "resolve failed") @@ -521,7 +521,7 @@ x |> Seq.iter(fun r -> let result = use dp = new DependencyProvider(NativeResolutionProbe(nativeProbingRoots)) let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget") - dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net5.0") + dp.Resolve(idm, ".fsx", packagemanagerlines, reportError, "net6.0") // Expected: error FS3217: PackageManager can not reference the System Package 'FSharp.Core' Assert.False(result.Success, "resolve succeeded but should have failed") @@ -547,7 +547,7 @@ x |> Seq.iter(fun r -> let result = use dp = new DependencyProvider(NativeResolutionProbe(nativeProbingRoots)) let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget") - dp.Resolve(idm, ".csx", packagemanagerlines, reportError, "net5.0") + dp.Resolve(idm, ".csx", packagemanagerlines, reportError, "net6.0") Assert.True(result.Success, "resolve failed but should have succeeded") @@ -590,7 +590,7 @@ x |> Seq.iter(fun r -> Assert.Equal(1, result.SourceFiles |> Seq.length) Assert.Equal(2, result.Roots |> Seq.length) - let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net5.0") + let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net6.0") Assert.Equal(true, result.Success) Assert.Equal(1, result.Resolutions |> Seq.length) Assert.Equal(1, result.SourceFiles |> Seq.length) @@ -697,7 +697,7 @@ x |> Seq.iter(fun r -> let mutable currentPath:string = null use dp = new DependencyProvider(NativeResolutionProbe(nativeProbingRoots)) let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget") - let result = dp.Resolve(idm, ".fsx", [|"r", "Microsoft.Data.Sqlite,3.1.7"|], reportError, "net5.0") + let result = dp.Resolve(idm, ".fsx", [|"r", "Microsoft.Data.Sqlite,3.1.7"|], reportError, "net6.0") Assert.Equal(true, result.Success) currentPath <- appendSemiColon (Environment.GetEnvironmentVariable("PATH")) finalPath <- appendSemiColon (Environment.GetEnvironmentVariable("PATH")) @@ -819,7 +819,7 @@ x |> Seq.iter(fun r -> ResolvingErrorReport (report) let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget") - let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net5.0", timeout=0) // Fail in 0 milliseconds + let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"|], reportError, "net6.0", timeout=0) // Fail in 0 milliseconds Assert.Equal(false, result.Success) Assert.Equal(foundCorrectError, true) Assert.Equal(foundWrongError, false) @@ -842,7 +842,7 @@ x |> Seq.iter(fun r -> ResolvingErrorReport (report) let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget") - let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"; "r", "timeout=0"|], reportError, "net5.0", null, "", "", "", -1) // Wait forever + let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"; "r", "timeout=0"|], reportError, "net6.0", null, "", "", "", -1) // Wait forever Assert.Equal(false, result.Success) Assert.Equal(foundCorrectError, true) Assert.Equal(foundWrongError, false) @@ -865,7 +865,7 @@ x |> Seq.iter(fun r -> ResolvingErrorReport (report) let idm = dp.TryFindDependencyManagerByKey(Seq.empty, "", reportError, "nuget") - let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"; "r", "timeout=none"|], reportError, "net5.0", null, "", "", "", -1) // Wait forever + let result = dp.Resolve(idm, ".fsx", [|"r", "FSharp.Data,3.3.3"; "r", "timeout=none"|], reportError, "net6.0", null, "", "", "", -1) // Wait forever Assert.Equal(true, result.Success) Assert.Equal(foundCorrectError, false) Assert.Equal(foundWrongError, false) diff --git a/tests/FSharp.Compiler.Private.Scripting.UnitTests/FSharp.Compiler.Private.Scripting.UnitTests.fsproj b/tests/FSharp.Compiler.Private.Scripting.UnitTests/FSharp.Compiler.Private.Scripting.UnitTests.fsproj index d30dd32729c..ed96b50dd07 100644 --- a/tests/FSharp.Compiler.Private.Scripting.UnitTests/FSharp.Compiler.Private.Scripting.UnitTests.fsproj +++ b/tests/FSharp.Compiler.Private.Scripting.UnitTests/FSharp.Compiler.Private.Scripting.UnitTests.fsproj @@ -2,8 +2,8 @@ - net472;net5.0 - net5.0 + net472;net6.0 + net6.0 Library true xunit diff --git a/tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.Tests.fsproj b/tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.Tests.fsproj index 4730939bd38..02bb8e64750 100644 --- a/tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.Tests.fsproj +++ b/tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.Tests.fsproj @@ -1,9 +1,10 @@ - + + Exe - net472;net5.0 - net5.0 + net472;net6.0 + net6.0 $(NoWarn);44;75; true false diff --git a/tests/FSharp.Compiler.UnitTests/FSharp.Compiler.UnitTests.fsproj b/tests/FSharp.Compiler.UnitTests/FSharp.Compiler.UnitTests.fsproj index ee836d5942f..a194e679b4e 100644 --- a/tests/FSharp.Compiler.UnitTests/FSharp.Compiler.UnitTests.fsproj +++ b/tests/FSharp.Compiler.UnitTests/FSharp.Compiler.UnitTests.fsproj @@ -3,19 +3,19 @@ - net472;net5.0 - net5.0 + net472;net6.0 + net6.0 Library true $(DefineConstants);ASSUME_PREVIEW_FSHARP_CORE xunit - - - + + + - + @@ -48,7 +48,7 @@ CompilerService\TokenizerTests.fs - diff --git a/tests/benchmarks/TaskPerf/TaskPerf.fsproj b/tests/benchmarks/TaskPerf/TaskPerf.fsproj index 88e9af5c263..7323269bc9c 100644 --- a/tests/benchmarks/TaskPerf/TaskPerf.fsproj +++ b/tests/benchmarks/TaskPerf/TaskPerf.fsproj @@ -1,7 +1,7 @@  - net5.0 + net6.0 Exe true diff --git a/tests/benchmarks/TaskPerfPreviousCompiler/TaskPerfPreviousCompiler.fsproj b/tests/benchmarks/TaskPerfPreviousCompiler/TaskPerfPreviousCompiler.fsproj index d9446577406..0e0afb083c7 100644 --- a/tests/benchmarks/TaskPerfPreviousCompiler/TaskPerfPreviousCompiler.fsproj +++ b/tests/benchmarks/TaskPerfPreviousCompiler/TaskPerfPreviousCompiler.fsproj @@ -1,7 +1,7 @@  - net5.0 + net6.0 Exe true $(OtherFlags) --define:ASYNC_PERF diff --git a/tests/fsharp/.gitignore b/tests/fsharp/.gitignore index ea4771517da..97071d47988 100644 --- a/tests/fsharp/.gitignore +++ b/tests/fsharp/.gitignore @@ -15,3 +15,4 @@ Library1.dll cd.tmp *.err *.vserr +*.pdb \ No newline at end of file diff --git a/tests/fsharp/FSharpSuite.Tests.fsproj b/tests/fsharp/FSharpSuite.Tests.fsproj index c2c25724faa..274a88f9cd1 100644 --- a/tests/fsharp/FSharpSuite.Tests.fsproj +++ b/tests/fsharp/FSharpSuite.Tests.fsproj @@ -2,8 +2,8 @@ - net472;net5.0 - net5.0 + net472;net6.0 + net6.0 win-x86;win-x64 $(AssetTargetFallback);portable-net45+win8+wp8+wpa81 true diff --git a/tests/fsharp/core/printing/output.1000.stderr.txt b/tests/fsharp/core/printing/output.1000.stderr.txt new file mode 100644 index 00000000000..6926dcc9f34 --- /dev/null +++ b/tests/fsharp/core/printing/output.1000.stderr.txt @@ -0,0 +1,348 @@ + + #blaaaaaa // blaaaaaa is not a known command;; + ^^^^^^^^^ + +stdin(219,1): warning FS3353: Invalid directive '#blaaaaaa ' + + + type Regression4319_T0 = static member (+-+-+) = "0 arguments";; + -----------------------------------------^^^^^ + +stdin(571,42): warning FS1172: Infix operator member '+-+-+' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1 = static member (+-+-+) x = "1 argument";; + -----------------------------------------^^^^^ + +stdin(572,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1b = static member (+-+-+) (x) = "1 (argument) [brackets make no diff]";; + -----------------------------------------^^^^^ + +stdin(573,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1c = static member (+-+-+) x = let a,b = x in "1 argument, tuple typed from RHS. Still not OK";; + -----------------------------------------^^^^^ + +stdin(574,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1d = static member (+-+-+) (x:int*int) = "1 argument, tuple typed from LHS. Still not OK";; + -----------------------------------------^^^^^ + +stdin(575,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T3 = static member (+-+-+) (x,y,z) = "3 arguments";; + -----------------------------------------^^^^^ + +stdin(577,42): warning FS1173: Infix operator member '+-+-+' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1 = static member (+-+-+) x moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(578,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1 = static member (+-+-+) x moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(578,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1b = static member (+-+-+) (x) moreArgs = "1 (argument) [brackets make no diff] and further args";; + -----------------------------------------^^^^^ + +stdin(579,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1b = static member (+-+-+) (x) moreArgs = "1 (argument) [brackets make no diff] and further args";; + -----------------------------------------^^^^^ + +stdin(579,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U2 = static member (+-+-+) (x,y) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(580,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U3 = static member (+-+-+) (x,y,z) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(581,42): warning FS1173: Infix operator member '+-+-+' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U3 = static member (+-+-+) (x,y,z) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(581,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (:=) = "COLON_EQUALS" + -------------------^^ + +stdin(584,20): warning FS1172: Infix operator member ':=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (:=) = "COLON_EQUALS" + -------------------^^ + +stdin(584,20): warning FS0086: The name '(:=)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (&) = "AMP" + -------------------^ + +stdin(588,20): warning FS1172: Infix operator member '&' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (&) = "AMP" + -------------------^ + +stdin(588,20): warning FS0086: The name '(&)' should not be used as a member name. If defining a static member for use from other CLI languages then use the name 'op_Amp' instead. + + + static member (&^) = "AMP_AMP" + -------------------^^ + +stdin(589,20): warning FS1172: Infix operator member '&^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (=) = "EQUALS" + -------------------^ + +stdin(590,20): warning FS1172: Infix operator member '=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (=) = "EQUALS" + -------------------^ + +stdin(590,20): warning FS0086: The name '(=)' should not be used as a member name. To define equality semantics for a type, override the 'Object.Equals' member. If defining a static member for use from other CLI languages then use the name 'op_Equality' instead. + + + static member (!=) = "INFIX_COMPARE_OP" + -------------------^^ + +stdin(592,20): warning FS1172: Infix operator member '!=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...=) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(596,20): warning FS1172: Infix operator member '...=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...!=) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^^ + +stdin(597,20): warning FS1172: Infix operator member '...!=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...<) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(598,20): warning FS1172: Infix operator member '...<' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...>) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(599,20): warning FS1172: Infix operator member '...>' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ($) = "DOLLAR" + -------------------^ + +stdin(601,20): warning FS1172: Infix operator member '$' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (<) = "LESS" + -------------------^ + +stdin(602,20): warning FS1172: Infix operator member '<' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (<) = "LESS" + -------------------^ + +stdin(602,20): warning FS0086: The name '(<)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name 'op_LessThan' instead. + + + static member (>) = "GREATER" + -------------------^ + +stdin(603,20): warning FS1172: Infix operator member '>' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (>) = "GREATER" + -------------------^ + +stdin(603,20): warning FS0086: The name '(>)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name 'op_GreaterThan' instead. + + + static member (@) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(604,20): warning FS1172: Infix operator member '@' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (@) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(604,20): warning FS0086: The name '(@)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (^) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(605,20): warning FS1172: Infix operator member '^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (^) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(605,20): warning FS0086: The name '(^)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (...@) = "INFIX_AT_HAT_OP" // with $. prefix + -------------------^^^^ + +stdin(606,20): warning FS1172: Infix operator member '...@' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...^) = "INFIX_AT_HAT_OP" // with $. prefix + -------------------^^^^ + +stdin(607,20): warning FS1172: Infix operator member '...^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (%) = "PERCENT_OP" + -------------------^ + +stdin(608,20): warning FS1172: Infix operator member '%' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (-) = "MINUS" + -------------------^ + +stdin(610,20): warning FS1172: Infix operator member '-' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( * ) = "STAR" + --------------------^ + +stdin(611,21): warning FS1172: Infix operator member '*' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (/) = "INFIX_STAR_DIV_MOD_OP" + -------------------^ + +stdin(613,20): warning FS1172: Infix operator member '/' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ...* ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(615,21): warning FS1172: Infix operator member '...*' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( .../ ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(616,21): warning FS1172: Infix operator member '.../' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ...% ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(617,21): warning FS1172: Infix operator member '...%' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ** ) = "INFIX_STAR_STAR_OP" + --------------------^^ + +stdin(618,21): warning FS1172: Infix operator member '**' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + member this.ToString() = "ABC" + ----------------^^^^^^^^ + +stdin(623,17): warning FS0864: This new member hides the abstract member 'System.Object.ToString() : string'. Rename the member or use 'override' instead. + + + let x,f = it, (fun () -> !it);; // this will read from the static storage for 'it' + -------------------------^ + +stdin(643,26): info FS3370: The use of '!' from the F# library is deprecated. See https://aka.ms/fsharp-refcell-ops. For example, please change '!cell' to 'cell.Value'. + + + x := 3;; + --^^ + +stdin(645,3): info FS3370: The use of ':=' from the F# library is deprecated. See https://aka.ms/fsharp-refcell-ops. For example, please change 'cell := expr' to 'cell.Value <- expr'. + + + member this.M() = "string" + ----------------^ + +stdin(764,17): error FS0438: Duplicate method. The method 'M' has the same name and signature as another method in type 'ExpectDupMethod'. + + + member this.P = "string" + ----------------^ + +stdin(771,17): error FS0438: Duplicate method. The method 'get_P' has the same name and signature as another method in type 'ExpectDupProperty'. + + + type public IBPublic = interface inherit IAPrivate abstract Q : int end + ------------------^^^^^^^^ + +stdin(778,19): error FS0410: The type 'IAPrivate' is less accessible than the value, member or type 'IBPublic' it is used in. + + + type internal IBInternal = interface inherit IAPrivate abstract Q : int end + ------------------^^^^^^^^^^ + +stdin(783,19): error FS0410: The type 'IAPrivate' is less accessible than the value, member or type 'IBInternal' it is used in. + + + type public IBPublic = interface inherit IAInternal abstract Q : int end + ------------------^^^^^^^^ + +stdin(792,19): error FS0410: The type 'IAInternal' is less accessible than the value, member or type 'IBPublic' it is used in. + + + override x.M(a:string) = 1 + -------------------^ + +stdin(824,20): error FS0361: The override 'M: string -> int' implements more than one abstract slot, e.g. 'abstract Regression4232.D.M: 'U -> int' and 'abstract Regression4232.D.M: 'T -> int' + + + let (|A|B|) (x:int) = A x;; + -----^^^^^ + +stdin(832,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) (x:'a) = A x;; + -----^^^^^ + +stdin(835,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) (p:'a) (x:int) = A p;; + -----^^^^^ + +stdin(838,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) = failwith "" : Choice;; + -----^^^^^ + +stdin(844,6): error FS1209: Active pattern '|A|B|' is not a function + diff --git a/tests/fsharp/core/printing/output.1000.stdout.txt b/tests/fsharp/core/printing/output.1000.stdout.txt new file mode 100644 index 00000000000..6cebad0208a --- /dev/null +++ b/tests/fsharp/core/printing/output.1000.stdout.txt @@ -0,0 +1,2749 @@ + +> val it: unit = () + +> val repeatId: string = "A" + +> val repeatId: string = "B" + +namespace FSI_0005 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile1 = + new: unit -> ClassInFile1 + +namespace FSI_0006 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile1 = + new: unit -> ClassInFile1 + +namespace FSI_0006 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile2 = + new: unit -> ClassInFile2 + +> val x1: seq +val x2: seq +val x3: seq +val f1: System.Windows.Forms.Form = System.Windows.Forms.Form, Text: f1 form +val fs: System.Windows.Forms.Form[] = + [|System.Windows.Forms.Form, Text: fs #0; + System.Windows.Forms.Form, Text: fs #1; + System.Windows.Forms.Form, Text: fs #2; + System.Windows.Forms.Form, Text: fs #3; + System.Windows.Forms.Form, Text: fs #4; + System.Windows.Forms.Form, Text: fs #5; + System.Windows.Forms.Form, Text: fs #6; + System.Windows.Forms.Form, Text: fs #7; + System.Windows.Forms.Form, Text: fs #8; + System.Windows.Forms.Form, Text: fs #9; + System.Windows.Forms.Form, Text: fs #10; + System.Windows.Forms.Form, Text: fs #11; + System.Windows.Forms.Form, Text: fs #12; + System.Windows.Forms.Form, Text: fs #13; + System.Windows.Forms.Form, Text: fs #14; + System.Windows.Forms.Form, Text: fs #15; + System.Windows.Forms.Form, Text: fs #16; + System.Windows.Forms.Form, Text: fs #17; + System.Windows.Forms.Form, Text: fs #18; + System.Windows.Forms.Form, Text: fs #19; + System.Windows.Forms.Form, Text: fs #20; + System.Windows.Forms.Form, Text: fs #21; + System.Windows.Forms.Form, Text: fs #22; + System.Windows.Forms.Form, Text: fs #23; + System.Windows.Forms.Form, Text: fs #24; + System.Windows.Forms.Form, Text: fs #25; + System.Windows.Forms.Form, Text: fs #26; + System.Windows.Forms.Form, Text: fs #27; + System.Windows.Forms.Form, Text: fs #28; + System.Windows.Forms.Form, Text: fs #29; + System.Windows.Forms.Form, Text: fs #30; + System.Windows.Forms.Form, Text: fs #31; + System.Windows.Forms.Form, Text: fs #32; + System.Windows.Forms.Form, Text: fs #33; + System.Windows.Forms.Form, Text: fs #34; + System.Windows.Forms.Form, Text: fs #35; + System.Windows.Forms.Form, Text: fs #36; + System.Windows.Forms.Form, Text: fs #37; + System.Windows.Forms.Form, Text: fs #38; + System.Windows.Forms.Form, Text: fs #39; + System.Windows.Forms.Form, Text: fs #40; + System.Windows.Forms.Form, Text: fs #41; + System.Windows.Forms.Form, Text: fs #42; + System.Windows.Forms.Form, Text: fs #43; + System.Windows.Forms.Form, Text: fs #44; + System.Windows.Forms.Form, Text: fs #45; + System.Windows.Forms.Form, Text: fs #46; + System.Windows.Forms.Form, Text: fs #47; + System.Windows.Forms.Form, Text: fs #48; + System.Windows.Forms.Form, Text: fs #49; + System.Windows.Forms.Form, Text: fs #50; + System.Windows.Forms.Form, Text: fs #51; + System.Windows.Forms.Form, Text: fs #52; + System.Windows.Forms.Form, Text: fs #53; + System.Windows.Forms.Form, Text: fs #54; + System.Windows.Forms.Form, Text: fs #55; + System.Windows.Forms.Form, Text: fs #56; + System.Windows.Forms.Form, Text: fs #57; + System.Windows.Forms.Form, Text: fs #58; + System.Windows.Forms.Form, Text: fs #59; + System.Windows.Forms.Form, Text: fs #60; + System.Windows.Forms.Form, Text: fs #61; + System.Windows.Forms.Form, Text: fs #62; + System.Windows.Forms.Form, Text: fs #63; + System.Windows.Forms.Form, Text: fs #64; + System.Windows.Forms.Form, Text: fs #65; + System.Windows.Forms.Form, Text: fs #66; + System.Windows.Forms.Form, Text: fs #67; + System.Windows.Forms.Form, Text: fs #68; + System.Windows.Forms.Form, Text: fs #69; + System.Windows.Forms.Form, Text: fs #70; + System.Windows.Forms.Form, Text: fs #71; + System.Windows.Forms.Form, Text: fs #72; + System.Windows.Forms.Form, Text: fs #73; + System.Windows.Forms.Form, Text: fs #74; + System.Windows.Forms.Form, Text: fs #75; + System.Windows.Forms.Form, Text: fs #76; + System.Windows.Forms.Form, Text: fs #77; + System.Windows.Forms.Form, Text: fs #78; + System.Windows.Forms.Form, Text: fs #79; + System.Windows.Forms.Form, Text: fs #80; + System.Windows.Forms.Form, Text: fs #81; + System.Windows.Forms.Form, Text: fs #82; + System.Windows.Forms.Form, Text: fs #83; + System.Windows.Forms.Form, Text: fs #84; + System.Windows.Forms.Form, Text: fs #85; + System.Windows.Forms.Form, Text: fs #86; + System.Windows.Forms.Form, Text: fs #87; + System.Windows.Forms.Form, Text: fs #88; + System.Windows.Forms.Form, Text: fs #89; + System.Windows.Forms.Form, Text: fs #90; + System.Windows.Forms.Form, Text: fs #91; + System.Windows.Forms.Form, Text: fs #92; + System.Windows.Forms.Form, Text: fs #93; + System.Windows.Forms.Form, Text: fs #94; + System.Windows.Forms.Form, Text: fs #95; + System.Windows.Forms.Form, Text: fs #96; + System.Windows.Forms.Form, Text: fs #97; + System.Windows.Forms.Form, Text: fs #98; + System.Windows.Forms.Form, Text: fs #99; ...|] +val xs: string list = + ["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; "13"; + "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; "24"; "25"; + "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"; + "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"; "48"; "49"; + "50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"; "58"; "59"; "60"; "61"; + "62"; "63"; "64"; "65"; "66"; "67"; "68"; "69"; "70"; "71"; "72"; "73"; + "74"; "75"; "76"; "77"; "78"; "79"; "80"; "81"; "82"; "83"; "84"; "85"; + "86"; "87"; "88"; "89"; "90"; "91"; "92"; "93"; "94"; "95"; "96"; "97"; + "98"; "99"; ...] +val xa: string[] = + [|"0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; "13"; + "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; "24"; "25"; + "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"; + "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"; "48"; "49"; + "50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"; "58"; "59"; "60"; "61"; + "62"; "63"; "64"; "65"; "66"; "67"; "68"; "69"; "70"; "71"; "72"; "73"; + "74"; "75"; "76"; "77"; "78"; "79"; "80"; "81"; "82"; "83"; "84"; "85"; + "86"; "87"; "88"; "89"; "90"; "91"; "92"; "93"; "94"; "95"; "96"; "97"; + "98"; "99"; ...|] +val xa2: string[,] = [["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"] + ["10"; "11"; "12"; "13"; "14"; "15"; "16"; "17"] + ["20"; "21"; "22"; "23"; "24"; "25"; "26"; "27"] + ["30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"] + ["40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"] + ["50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"] + ["60"; "61"; "62"; "63"; "64"; "65"; "66"; "67"] + ["70"; "71"; "72"; "73"; "74"; "75"; "76"; "77"]] +val sxs0: Set = set [] + +> val sxs1: Set = set ["0"] + +> val sxs2: Set = set ["0"; "1"] + +> val sxs3: Set = set ["0"; "1"; "2"] + +> val sxs4: Set = set ["0"; "1"; "2"; "3"] + +> val sxs200: Set = + set ["0"; "1"; "10"; "100"; "101"; "102"; "103"; "104"; "105"; ...] + +> val msxs0: Map = map [] + +> val msxs1: Map = map [(0, "0")] + +> val msxs2: Map = map [(0, "0"); (1, "1")] + +> val msxs3: Map = map [(0, "0"); (1, "1"); (2, "2")] + +> val msxs4: Map = map [(0, "0"); (1, "1"); (2, "2"); (3, "3")] + +> val msxs200: Map = + map + [(0, "0"); (1, "1"); (2, "2"); (3, "3"); (4, "4"); (5, "5"); (6, "6"); + (7, "7"); (8, "8"); ...] + +> module M = + val a: string = "sub-binding" + val b: + (seq * seq * seq * System.Windows.Forms.Form) option * + (string list * string list * string[,]) option = + (Some (, , , System.Windows.Forms.Form, Text: f1 form), + Some + (["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; + "13"; "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; + "24"; "25"; "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; + "35"; "36"; "37"; "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; + "46"; "47"; "48"; "49"; "50"; "51"; "52"; "53"; "54"; "55"; "56"; + "57"; "58"; "59"; "60"; "61"; "62"; "63"; "64"; "65"; "66"; "67"; + "68"; "69"; "70"; "71"; "72"; "73"; "74"; "75"; "76"; "77"; "78"; + "79"; "80"; "81"; "82"; "83"; "84"; "85"; "86"; "87"; "88"; "89"; + "90"; "91"; "92"; "93"; "94"; "95"; "96"; ...], ..., ...)) +type T = + new: a: int * b: int -> T + member AMethod: x: int -> int + static member StaticMethod: x: int -> int + member AProperty: int + static member StaticProperty: int +val f_as_method: x: int -> int +val f_as_thunk: (int -> int) +val refCell: string ref = { contents = "value" } +module D1 = + val words: System.Collections.Generic.IDictionary + val words2000: System.Collections.Generic.IDictionary + +> > module D2 = + val words: IDictionary + val words2000: IDictionary +val opt1: 'a option +val opt1b: int option = None +val opt4: 'a option option option option +val opt4b: int option option option option = Some (Some (Some None)) +val opt5: int list option option option option option list = + [Some (Some (Some (Some None))); + Some (Some (Some (Some (Some [1; 2; 3; 4; 5; 6])))); + Some + (Some + (Some + (Some + (Some + [1; 2; 3; 4; 5; 6; 7; 8; 9; 0; 1; 2; 3; 4; 5; 6; 7; 8; 9; 1; + 2; 3; 4; 5; 6; 7; 8; 9; 1; 2; 3; 4; 5; 6; 7; 8; 9; 1; 2; 3; + 4; 5; 6; 7; 8; 9; 1; 2; 3; 4; 5; 6; 7; 8; 9; 0]))))] +val mkStr: n: int -> string +val strs: string[] = + [|""; "-"; "--"; "---"; "----"; "-----"; "------"; "-------"; "--------"; + "---------"; "----------"; "-----------"; "------------"; "-------------"; + "--------------"; "---------------"; "----------------"; + "-----------------"; "------------------"; "-------------------"; + "--------------------"; "---------------------"; "----------------------"; + "-----------------------"; "------------------------"; + "-------------------------"; "--------------------------"; + "---------------------------"; "----------------------------"; + "-----------------------------"; "------------------------------"; + "-------------------------------"; "--------------------------------"; + "---------------------------------"; "----------------------------------"; + "-----------------------------------"; + "------------------------------------"; + "-------------------------------------"; + "--------------------------------------"; + "---------------------------------------"; + "----------------------------------------"; + "-----------------------------------------"; + "------------------------------------------"; + "-------------------------------------------"; + "--------------------------------------------"; + "---------------------------------------------"; + "----------------------------------------------"; + "-----------------------------------------------"; + "------------------------------------------------"; + "-------------------------------------------------"; + "--------------------------------------------------"; + "---------------------------------------------------"; + "----------------------------------------------------"; + "-----------------------------------------------------"; + "------------------------------------------------------"; + "-------------------------------------------------------"; + "--------------------------------------------------------"; + "---------------------------------------------------------"; + "----------------------------------------------------------"; + "-----------------------------------------------------------"; + "------------------------------------------------------------"; + "-------------------------------------------------------------"; + "--------------------------------------------------------------"; + "---------------------------------------------------------------"; + "----------------------------------------------------------------"; + "-----------------------------------------------------------------"; + "------------------------------------------------------------------"; + "-------------------------------------------------------------------"; + "--------------------------------------------------------------------"; + "---------------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-----------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[12 chars]; + "-------------------------------------------------------------"+[13 chars]; + "-------------------------------------------------------------"+[14 chars]; + "-------------------------------------------------------------"+[15 chars]; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[18 chars]; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[20 chars]; + "-------------------------------------------------------------"+[21 chars]; + "-------------------------------------------------------------"+[22 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[24 chars]; + "-------------------------------------------------------------"+[25 chars]; + "-------------------------------------------------------------"+[26 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[28 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[31 chars]; + "-------------------------------------------------------------"+[32 chars]; + "-------------------------------------------------------------"+[33 chars]; + "-------------------------------------------------------------"+[34 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[36 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[38 chars]; + ...|] +val str7s: string[] = + [|""; "-------"; "--------------"; "---------------------"; + "----------------------------"; "-----------------------------------"; + "------------------------------------------"; + "-------------------------------------------------"; + "--------------------------------------------------------"; + "---------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[58 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[72 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[86 chars]; + "-------------------------------------------------------------"+[93 chars]; + "-------------------------------------------------------------"+[100 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[114 chars]; + "-------------------------------------------------------------"+[121 chars]; + "-------------------------------------------------------------"+[128 chars]; + "-------------------------------------------------------------"+[135 chars]; + "-------------------------------------------------------------"+[142 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[156 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[170 chars]; + "-------------------------------------------------------------"+[177 chars]; + "-------------------------------------------------------------"+[184 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[198 chars]; + "-------------------------------------------------------------"+[205 chars]; + "-------------------------------------------------------------"+[212 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[226 chars]; + "-------------------------------------------------------------"+[233 chars]; + "-------------------------------------------------------------"+[240 chars]; + "-------------------------------------------------------------"+[247 chars]; + "-------------------------------------------------------------"+[254 chars]; + "-------------------------------------------------------------"+[261 chars]; + "-------------------------------------------------------------"+[268 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[282 chars]; + "-------------------------------------------------------------"+[289 chars]; + "-------------------------------------------------------------"+[296 chars]; + "-------------------------------------------------------------"+[303 chars]; + "-------------------------------------------------------------"+[310 chars]; + "-------------------------------------------------------------"+[317 chars]; + "-------------------------------------------------------------"+[324 chars]; + "-------------------------------------------------------------"+[331 chars]; + "-------------------------------------------------------------"+[338 chars]; + "-------------------------------------------------------------"+[345 chars]; + "-------------------------------------------------------------"+[352 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[366 chars]; + "-------------------------------------------------------------"+[373 chars]; + "-------------------------------------------------------------"+[380 chars]; + "-------------------------------------------------------------"+[387 chars]; + "-------------------------------------------------------------"+[394 chars]; + "-------------------------------------------------------------"+[401 chars]; + "-------------------------------------------------------------"+[408 chars]; + "-------------------------------------------------------------"+[415 chars]; + "-------------------------------------------------------------"+[422 chars]; + "-------------------------------------------------------------"+[429 chars]; + "-------------------------------------------------------------"+[436 chars]; + "-------------------------------------------------------------"+[443 chars]; + "-------------------------------------------------------------"+[450 chars]; + "-------------------------------------------------------------"+[457 chars]; + "-------------------------------------------------------------"+[464 chars]; + "-------------------------------------------------------------"+[471 chars]; + "-------------------------------------------------------------"+[478 chars]; + "-------------------------------------------------------------"+[485 chars]; + "-------------------------------------------------------------"+[492 chars]; + "-------------------------------------------------------------"+[499 chars]; + "-------------------------------------------------------------"+[506 chars]; + "-------------------------------------------------------------"+[513 chars]; + "-------------------------------------------------------------"+[520 chars]; + "-------------------------------------------------------------"+[527 chars]; + "-------------------------------------------------------------"+[534 chars]; + "-------------------------------------------------------------"+[541 chars]; + "-------------------------------------------------------------"+[548 chars]; + "-------------------------------------------------------------"+[555 chars]; + "-------------------------------------------------------------"+[562 chars]; + "-------------------------------------------------------------"+[569 chars]; + "-------------------------------------------------------------"+[576 chars]; + "-------------------------------------------------------------"+[583 chars]; + "-------------------------------------------------------------"+[590 chars]; + "-------------------------------------------------------------"+[597 chars]; + "-------------------------------------------------------------"+[604 chars]; + "-------------------------------------------------------------"+[611 chars]; + "-------------------------------------------------------------"+[618 chars]; + "-------------------------------------------------------------"+[625 chars]; + "-------------------------------------------------------------"+[632 chars]; + ...|] +val grids: string[,] = + [[""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; + ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; + ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""] + [""; "-"; "--"; "---"; "----"; "-----"; "------"; "-------"; "--------"; + "---------"; "----------"; "-----------"; "------------"; "-------------"; + "--------------"; "---------------"; "----------------"; + "-----------------"; "------------------"; "-------------------"; + "--------------------"; "---------------------"; "----------------------"; + "-----------------------"; "------------------------"; + "-------------------------"; "--------------------------"; + "---------------------------"; "----------------------------"; + "-----------------------------"; "------------------------------"; + "-------------------------------"; "--------------------------------"; + "---------------------------------"; "----------------------------------"; + "-----------------------------------"; + "------------------------------------"; + "-------------------------------------"; + "--------------------------------------"; + "---------------------------------------"; + "----------------------------------------"; + "-----------------------------------------"; + "------------------------------------------"; + "-------------------------------------------"; + "--------------------------------------------"; + "---------------------------------------------"; + "----------------------------------------------"; + "-----------------------------------------------"; + "------------------------------------------------"; + "-------------------------------------------------"; ...] + ...] + +> type tree = + | L + | N of tree list +val mkT: w: int -> d: int -> tree +val tree: w: int -> d: int -> tree + +> [Building 2 4...done] +val tree_2_4: tree = + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]] + +> [Building 2 6...done] +val tree_2_6: tree = + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N ...; ...]; ...]; ...]; ...]; ...] + +> [Building 2 8...done] +val tree_2_8: tree = + N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N ...; ...]; ...]; ...]; ...]; ...] + +> [Building 2 10...done] +val tree_2_10: tree = + N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L; ...]; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...]; ...] + +> [Building 2 12...done] +val tree_2_12: tree = + N [N [N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N ...; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 2 14...done] +val tree_2_14: tree = + N [N [N [N [N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; ...]; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...]; ...]; ...]; + ...] + +> [Building 3 8...done] +val tree_3_8: tree = + N [N [N [N [N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; N ...; ...]; + ...]; ...]; ...]; ...]; ...] + +> [Building 4 8...done] +val tree_4_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; ...]; ...]; ...]; ...]; ...]; + ...]; ...]; ...] + +> [Building 5 8...done] +val tree_5_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; N ...; ...]; ...]; + ...]; ...]; ...]; ...] + +> [Building 6 8...done] +val tree_6_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L; ...]; ...]; ...]; ...]; ...]; ...]; + ...]; ...] + +> [Building 5 3...done] +val tree_5_3: tree = + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; N [N [L; L; L; L; ...]; ...]; + ...] + +> > type X = + | Var of int + | Bop of int * X * X +val generate: x: int -> X + +> val exps: X list = + [Bop (1, Var 0, Var 0); Var 2; + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)); Var 4; + Bop (5, Var 2, Bop (1, Var 0, Var 0)); Var 6; + Bop (7, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)), Var 2); + Var 8; + Bop (9, Var 4, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0))); + Var 10; + Bop + (213, Var 106, + Bop + (71, + Bop + (35, Bop (17, Var 8, Bop (5, Var 2, Bop (1, Var 0, Var 0))), + Bop (11, ..., ...)), ...)); ...] + +> module Exprs = + val x1: X = + Bop + (213, Var 106, + Bop + (71, + Bop + (35, Bop (17, Var 8, Bop (5, Var 2, Bop (1, Var 0, Var 0))), + Bop + (11, Bop (5, Var 2, Bop (1, Var 0, Var 0)), + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)))), + Bop + (23, + Bop + (11, Bop (5, Var 2, Bop (1, Var 0, Var 0)), + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0))), + Bop + (7, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)), + Var 2)))) + val x2: X = Var 21342314 + val x3: X = Var 3214 + val x4: X = Bop (1231357, Var 615678, Var 410452) + val x5: X = + Bop + (5234547, Bop (2617273, Var 1308636, Var 872424), + Bop (1744849, Var 872424, Var 581616)) + val x6: X = + Bop + (923759825, Var 461879912, Bop (307919941, Var 153959970, Var 102639980)) + val x7: X = Var 2435234 + val x8: X = + Bop + (12396777, Var 6198388, + Bop + (4132259, + Bop + (2066129, Var 1033064, + Bop + (688709, Var 344354, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502))))), + Bop + (1377419, + Bop + (688709, Var 344354, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop (25507, ..., ...)))), ...))) + val x9: X = + Bop + (3333333, Var 1666666, + Bop + (1111111, + Bop + (555555, Bop (277777, Var 138888, Var 92592), + Bop (185185, Var 92592, Var 61728)), Var 370370)) + val x10: X = + Bop + (1312311237, Var 656155618, + Bop + (437437079, + Bop + (218718539, + Bop + (109359269, Var 54679634, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop + (781, Var 390, Var 260)), + Var 1562), ...), ...), ...)), + ...))), ...)))), ...), ...)) + val x11: X = + Bop + (2147483647, + Bop + (1073741823, + Bop + (536870911, + Bop + (268435455, + Bop + (134217727, + Bop + (67108863, + Bop + (33554431, + Bop + (16777215, + Bop + (8388607, + Bop + (4194303, + Bop + (2097151, + Bop + (1048575, + Bop + (524287, + Bop + (262143, + Bop + (131071, + Bop + (65535, + Bop + (32767, + Bop + (16383, + Bop + (8191, + Bop + (4095, + Bop + (2047, + Bop + (1023, + Bop + (511, + Bop + (255, + Bop + (127, + Bop + (63, + Bop + (31, + Bop + (15, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var + 2), + Bop + (5, + Var + 2, + Bop + (1, + Var + 0, + Var + 0))), + Var + 10), + Bop + (21, + Var + 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + ...), + ...))), + ...), + ...), + ...), + ...), + ...), ...), + ...), ...), ...), + ...), ...), ...), ...), + ...), ...), ...), ...), ...), ...), + ...), ...), ...), ...), ...), ...) + +> type C = + new: x: string -> C + override ToString: unit -> string +val c1: C = +val csA: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] +val csB: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] +val csC: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] + +> exception Abc + +> exception AbcInt of int + +> exception AbcString of string + +> exception AbcExn of exn list + +> exception AbcException of System.Exception list + +> val exA1: exn = Abc +val exA2: exn = AbcInt 2 +val exA3: exn = AbcString "3" +val exA4: exn = AbcExn [Abc; AbcInt 2; AbcString "3"] +val exA5: exn = AbcException [AbcExn [Abc; AbcInt 2; AbcString "3"]] +exception Ex0 +exception ExUnit of unit +exception ExUnits of unit * unit +exception ExUnitOption of unit option +val ex0: exn = Ex0 +val exU: exn = ExUnit () +val exUs: exn = ExUnits ((), ()) +val exUSome: exn = ExUnitOption (Some ()) +val exUNone: exn = ExUnitOption None +type 'a T4063 = | AT4063 of 'a + +> val valAT3063_12: int T4063 = AT4063 12 + +> val valAT3063_True: bool T4063 = AT4063 true + +> val valAT3063_text: string T4063 = AT4063 "text" + +> val valAT3063_null: System.Object T4063 = AT4063 null + +> type M4063<'a> = + new: x: 'a -> M4063<'a> + +> val v4063: M4063 + +> type Taaaaa<'a> = + new: unit -> Taaaaa<'a> + +> type Taaaaa2<'a> = + inherit Taaaaa<'a> + new: unit -> Taaaaa2<'a> + member M: unit -> Taaaaa2<'a> + +> type Tbbbbb<'a> = + new: x: 'a -> Tbbbbb<'a> + member M: unit -> 'a + +> type Tbbbbb2 = + inherit Tbbbbb + new: x: string -> Tbbbbb2 + +> val it: (unit -> string) = + +> module RepeatedModule = + val repeatedByteLiteral: byte[] = [|12uy; 13uy; 14uy|] + +> module RepeatedModule = + val repeatedByteLiteral: byte[] = [|12uy; 13uy; 14uy|] + +> val it: string = "Check #help" + +> + F# Interactive directives: + + #r "file.dll";; // Reference (dynamically load) the given DLL + #i "package source uri";; // Include package source uri when searching for packages + #I "path";; // Add the given search path for referenced DLLs + #load "file.fs" ...;; // Load the given file(s) as if compiled and referenced + #time ["on"|"off"];; // Toggle timing on/off + #help;; // Display help + #r "nuget:FSharp.Data, 3.1.2";; // Load Nuget Package 'FSharp.Data' version '3.1.2' + #r "nuget:FSharp.Data";; // Load Nuget Package 'FSharp.Data' with the highest version + #quit;; // Exit + + F# Interactive command line options: + + + +> val it: string = "Check #time on and then off" + +> +--> Timing now on + +> +--> Timing now off + +> val it: string = "Check #unknown command" + +> val it: string = + "Check #I with a known directory (to avoid a warning, which includes the location of this file, which is fragile...)" + +> +--> Added '/' to library include path + +> type internal T1 = + | A + | B + +> type internal T2 = + { x: int } + +> type internal T3 + +> type internal T4 = + new: unit -> T4 + +> type T1 = + internal | A + | B + +> type T2 = + internal { x: int } + +> type private T1 = + | A + | B + +> type private T2 = + { x: int } + +> type T1 = + private | A + | B + +> type T2 = + private { x: int } + +> type internal T1 = + private | A + | B + +> type internal T2 = + private { x: int } + +> type private T3 + +> type private T4 = + new: unit -> T4 + +> exception X1 of int + +> exception private X2 of int + +> exception internal X3 of int + +> type T0 = + new: unit -> T0 +type T1Post<'a> = + new: unit -> T1Post<'a> +type 'a T1Pre = + new: unit -> 'a T1Pre + +> type T0 with + member M: unit -> T0 list +type T0 with + member P: T0 * T0 +type T0 with + member E: IEvent + +> type T1Post<'a> with + member M: unit -> T1Post<'a> list +type T1Post<'a> with + member P: T1Post<'a> * T1Post<'a> +type T1Post<'a> with + member E: IEvent + +> type 'a T1Pre with + member M: unit -> 'a T1Pre list +type 'a T1Pre with + member P: 'a T1Pre * 'a T1Pre +type 'a T1Pre with + member E: IEvent + +> type T1Post<'a> with + member M: unit -> T1Post<'a> list +type T1Post<'a> with + member P: T1Post<'a> * T1Post<'a> +type T1Post<'a> with + member E: IEvent + +> type 'a T1Pre with + member M: unit -> 'a T1Pre list +type 'a T1Pre with + member P: 'a T1Pre * 'a T1Pre +type 'a T1Pre with + member E: IEvent + +> type r = + { + f0: int + f1: int + f2: int + f3: int + f4: int + f5: int + f6: int + f7: int + f8: int + f9: int + } +val r10: r = { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 } +val r10s: r[] = + [|{ f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; ...|] +val r10s': string * r[] = + ("one extra node", + [|{ f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = ... }; ...|]) + +> val x1564_A1: int = 1 + + +--> Added '\' to library include path + +val x1564_A2: int = 2 + + +--> Added '\' to library include path + +val x1564_A3: int = 3 + +> type internal Foo2 = + private new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member private Prop3: int + +> module internal InternalM = + val x: int = 1 + type Foo2 = + private new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member private Prop3: int + type private Foo3 = + new: x: int * y: int * z: int -> Foo3 + 3 overloads + member Prop1: int + member Prop2: int + member Prop3: int + type T1 = + | A + | B + type T2 = + { x: int } + type T3 + type T4 = + new: unit -> T4 + type T5 = + | A + | B + type T6 = + { x: int } + type private T7 = + | A + | B + type private T8 = + { x: int } + type T9 = + private | A + | B + type T10 = + private { x: int } + type T11 = + private | A + | B + type T12 = + private { x: int } + type private T13 + type private T14 = + new: unit -> T14 +module internal PrivateM = + val private x: int = 1 + type private Foo2 = + new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member Prop3: int + type T1 = + | A + | B + type T2 = + { x: int } + type T3 + type T4 = + new: unit -> T4 + type T5 = + | A + | B + type T6 = + { x: int } + type private T7 = + | A + | B + type private T8 = + { x: int } + type T9 = + private | A + | B + type T10 = + private { x: int } + type T11 = + private | A + | B + type T12 = + private { x: int } + type private T13 + type private T14 = + new: unit -> T14 + +> val it: seq = + seq + [(43, "10/28/2008", 1); (46, "11/18/2008", 1); (56, "1/27/2009", 2); + (58, "2/10/2009", 1)] + +> module Test4343a = + val mk: i: int -> string + val x100: string = + "0123456789012345678901234567890123456789012345678901234567890"+[39 chars] + val x90: string = + "0123456789012345678901234567890123456789012345678901234567890"+[29 chars] + val x80: string = + "0123456789012345678901234567890123456789012345678901234567890"+[19 chars] + val x75: string = + "0123456789012345678901234567890123456789012345678901234567890"+[14 chars] + val x74: string = + "0123456789012345678901234567890123456789012345678901234567890"+[13 chars] + val x73: string = + "0123456789012345678901234567890123456789012345678901234567890"+[12 chars] + val x72: string = + "012345678901234567890123456789012345678901234567890123456789012345678901" + val x71: string = + "01234567890123456789012345678901234567890123456789012345678901234567890" + val x70: string = + "0123456789012345678901234567890123456789012345678901234567890123456789" +module Test4343b = + val fA: x: int -> int + val fB: x: 'a -> y: 'a -> 'a list + val gA: (int -> int) + val gB: ('a -> 'a -> 'a list) + val gAB: (int -> int) * ('a -> 'a -> 'a list) + val hB: ('a -> 'a -> 'a list) + val hA: (int -> int) +module Test4343c = + val typename<'a> : string + val typename2<'a> : string * string +module Test4343d = + val xList: int list = [1; 2; 3] + val xArray: int[] = [|1; 2; 3|] + val xString: string = "abcdef" + val xOption: int option = Some 12 + val xArray2: (int * int)[,] = [[(0, 0); (0, 1)] + [(1, 0); (1, 1)]] + val xSeq: seq +module Test4343e = + type C = + new: x: int -> C + val cA: C + val cB: C + val cAB: C * C * C list = + (FSI_0091+Test4343e+C, FSI_0091+Test4343e+C, + [FSI_0091+Test4343e+C; FSI_0091+Test4343e+C]) + type D = + new: x: int -> D + override ToString: unit -> string + val dA: D = D(1) + val dB: D = D(2) + val dAB: D * D * D list = (D(1), D(2), [D(1); D(2)]) + module Generic = + type CGeneric<'a> = + new: x: 'a -> CGeneric<'a> + val cA: C + val cB: C + val cAB: C * C * C list = + (FSI_0091+Test4343e+C, FSI_0091+Test4343e+C, + [FSI_0091+Test4343e+C; FSI_0091+Test4343e+C]) + type D<'a> = + new: x: 'a -> D<'a> + override ToString: unit -> string + val dA: D = D(1) + val dB: D = D(2) + val dAB: D * D * D list = (D(1), D(2), [D(1); D(2)]) + val dC: D = D(True) + val boxed_dABC: obj list = [D(1); D(2); D(True)] +type F1 = + inherit System.Windows.Forms.Form + interface System.IDisposable + val x: F1 + val x2: F1 + member B: unit -> int + member D: x: int -> int + 2 overloads + abstract MMM: bool -> bool + override ToString: unit -> string + static member A: unit -> int + static member C: unit -> int + abstract AAA: int + abstract BBB: bool with set + member D2: int + member E: int + abstract ZZZ: int + static val mutable private sx: F1 + static val mutable private sx2: F1 +[] +type IP = + new: x: int * y: int -> IP + static val mutable private AA: IP +module Regression4643 = + [] + type RIP = + new: x: int -> RIP + static val mutable private y: RIP + [] + type arg_unused_is_RIP = + new: x: RIP -> arg_unused_is_RIP + [] + type arg_used_is_RIP = + new: x: RIP -> arg_used_is_RIP + member X: RIP + [] + type field_is_RIP = + val x: RIP +type Either<'a,'b> = + | This of 'a + | That of 'b +val catch: f: (unit -> 'a) -> Either<'a,(string * string)> +val seqFindIndexFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +val seqFindFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +val seqPickFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +module Regression5218 = + val t1: int = 1 + val t2: int * int = (1, 2) + val t3: int * int * int = (1, 2, 3) + val t4: int * int * int * int = (1, 2, 3, 4) + val t5: int * int * int * int * int = (1, 2, 3, 4, 5) + val t6: int * int * int * int * int * int = (1, 2, 3, 4, 5, 6) + val t7: int * int * int * int * int * int * int = (1, 2, 3, 4, 5, 6, 7) + val t8: int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8) + val t9: int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9) + val t10: int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) + val t11: int * int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11) + val t12: + int * int * int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12) + val t13: + int * int * int * int * int * int * int * int * int * int * int * int * + int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13) + val t14: + int * int * int * int * int * int * int * int * int * int * int * int * + int * int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14) + val t15: + int * int * int * int * int * int * int * int * int * int * int * int * + int * int * int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15) + +> module Regression3739 = + type IB = + abstract AbstractMember: int -> int + type C<'a when 'a :> IB> = + new: unit -> C<'a> + static member StaticMember: x: 'a -> int + +> module Regression3739 = + type IB = + abstract AbstractMember: int -> int + type C<'a when 'a :> IB> = + new: unit -> C<'a> + static member StaticMember: x: 'a -> int + +> module Regression3740 = + type Writer<'a> = + abstract get_path: unit -> string + type MyClass = + interface Writer + val path: string + +> type Regression4319_T2 = + static member (+-+-+) : x: 'a * y: 'b -> string + +> type Regression4319_T0 = + static member (+-+-+) : string + +> type Regression4319_T1 = + static member (+-+-+) : x: 'a -> string + +> type Regression4319_T1b = + static member (+-+-+) : x: 'a -> string + +> type Regression4319_T1c = + static member (+-+-+) : x: ('a * 'b) -> string + +> type Regression4319_T1d = + static member (+-+-+) : x: (int * int) -> string + +> type Regression4319_T3 = + static member (+-+-+) : x: 'a * y: 'b * z: 'c -> string + +> type Regression4319_U1 = + static member (+-+-+) : x: 'a -> moreArgs: 'b -> string + +> type Regression4319_U1b = + static member (+-+-+) : x: 'a -> moreArgs: 'b -> string + +> type Regression4319_U2 = + static member (+-+-+) : x: 'a * y: 'b -> moreArgs: 'c -> string + +> type Regression4319_U3 = + static member (+-+-+) : x: 'a * y: 'b * z: 'c -> moreArgs: 'd -> string + +> type Regression4319_check = + static member (&) : string + static member (&^) : string + static member (@) : string + static member (!=) : string + static member (:=) : string + static member (^) : string + static member (/) : string + static member ($) : string + static member (...@) : string + static member (...!=) : string + static member (.../) : string + static member (...=) : string + static member (...>) : string + static member (...^) : string + static member (...<) : string + static member ( ...* ) : string + static member (...%) : string + static member (=) : string + static member ( ** ) : string + static member (>) : string + static member (<) : string + static member (%) : string + static member ( * ) : string + static member (-) : string + +> Expect ABC = ABC +type Regression4469 = + new: unit -> Regression4469 + member ToString: unit -> string +val r4469: Regression4469 = FSI_0107+Regression4469 +val it: unit = () + +> Expect ABC = ABC +val it: unit = () + +> module Regression1019_short = + val double_nan: float = nan + val double_infinity: float = infinity + val single_nan: float32 = nanf + val single_infinity: float32 = infinityf +module Regression1019_long = + val double_nan: float = nan + val double_infinity: float = infinity + val single_nan: float32 = nanf + val single_infinity: float32 = infinityf + +> val it: int ref = { contents = 1 } + +> val x: int ref = { contents = 1 } +val f: (unit -> int) + +> val it: int = 1 + +> val it: unit = () + +> val it: int = 3 + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: 'a list + +> val it: 'a list list + +> val it: 'a option + +> val it: 'a list * 'b list + +> val it: x: 'a -> 'a + +> val fff: x: 'a -> 'a + +> val it: ('a -> 'a) + +> val note_ExpectDupMethod: string = + "Regression4927: Expect error due to duplicate methods in the "+[20 chars] + +> > val note_ExpectDupProperty: string = + "Regression4927: Expect error due to duplicate properties in t"+[23 chars] + +> > > val it: string = "NOTE: Expect IAPrivate less accessible IBPublic" + +> > val it: string = "NOTE: Expect IAPrivate less accessible IBInternal" + +> > module Regression5265_PriPri = + type private IAPrivate = + abstract P: int + type private IBPrivate = + inherit IAPrivate + abstract Q: int + +> val it: string = "NOTE: Expect IAInternal less accessible IBPublic" + +> > module Regression5265_IntInt = + type internal IAInternal = + abstract P: int + type internal IBInternal = + inherit IAInternal + abstract Q: int + +> module Regression5265_IntPri = + type internal IAInternal = + abstract P: int + type private IBPrivate = + inherit IAInternal + abstract Q: int + +> module Regression5265_PubPub = + type IAPublic = + abstract P: int + type IBPublic = + inherit IAPublic + abstract Q: int + +> module Regression5265_PubInt = + type IAPublic = + abstract P: int + type internal IBInternal = + inherit IAPublic + abstract Q: int + +> module Regression5265_PubPri = + type IAPublic = + abstract P: int + type private IBPrivate = + inherit IAPublic + abstract Q: int + +> val it: string = + "Regression4232: Expect an error about duplicate virtual methods from parent type" + +> > val it: string = + "** Expect AnAxHostSubClass to be accepted. AxHost has a newslot virtual RightToLeft property outscope RightToLeft on Control" + +> type AnAxHostSubClass = + inherit System.Windows.Forms.AxHost + new: x: string -> AnAxHostSubClass + +> val it: string = + "** Expect error because the active pattern result contains free type variables" + +> > val it: string = + "** Expect error because the active pattern result contains free type variables (match value generic)" + +> > val it: string = + "** Expect error because the active pattern result contains free type variables (when active pattern also has parameters)" + +> > val it: string = + "** Expect OK, since error message says constraint should work!" + +> val (|A|B|) : x: int -> Choice + +> val it: string = "** Expect error since active pattern is not a function!" + +> > val it: string = + "** Expect OK since active pattern result is not too generic, typars depend on match val" + +> val (|A|B|) : p: bool -> 'a * 'b -> Choice<'a,'b> + +> val it: string = + "** Expect OK since active pattern result is not too generic, typars depend on parameters" + +> val (|A|B|) : aval: 'a -> bval: 'b -> x: bool -> Choice<'a,'b> + +> val it: string = + "** Expect OK since active pattern result is generic, but it typar from closure, so OK" + +> val outer: x: 'a -> (int -> 'a option) + +> val it: string = + "** Expect OK, BUG 472278: revert unintended breaking change to Active Patterns in F# 3.0" + +> val (|Check1|) : a: int -> int * 'a option + +> > module ReflectionEmit = + type IA = + abstract M: #IB -> int + and IB = + abstract M: #IA -> int + type IA2<'a when 'a :> IB2<'a> and 'a :> IA2<'a>> = + abstract M: int + and IB2<'b when 'b :> IA2<'b> and 'b :> IB2<'b>> = + abstract M: int + +> val it: string = + "Regression_139182: Expect the follow code to be accepted without error" + +> [] +type S = + member TheMethod: unit -> int64 +val theMethod: s: S -> int64 +type T = + new: unit -> T + member Prop5: int64 + static member Prop1: int64 + static member Prop2: int64 + static member Prop3: int64 + static member Prop4: string + +> val it: System.Threading.ThreadLocal list = [0 {IsValueCreated = false; + Values = ?;}] + +> type MyDU = + | Case1 of Val1: int * Val2: string + | Case2 of string * V2: bool * float + | Case3 of int + | Case4 of Item1: bool + | Case5 of bool * string + | Case6 of Val1: int * bool * string + | Case7 of ``Big Name`` : int +val namedFieldVar1: MyDU = Case1 (5, "") +val namedFieldVar2: MyDU = Case7 25 + +> exception MyNamedException1 of Val1: int * Val2: string +exception MyNamedException2 of string * V2: bool * float +exception MyNamedException3 of Data: int +exception MyNamedException4 of bool +exception MyNamedException5 of int * string +exception MyNamedException6 of Val1: int * bool * string * Data8: float +exception MyNamedException7 of ``Big Named Field`` : int +val namedEx1: exn = MyNamedException1 (5, "") +val namedEx2: exn = MyNamedException7 25 + +> type optionRecord = + { x: int option } +val x: optionRecord = { x = None } + +> type optionRecord = + { x: obj } +val x: optionRecord = { x = null } + +> type RecordWithMembers = + { x: obj } + member Method: unit -> int + member Property: int + +> type UnionWithMembers = + | Case1 + | Case2 of int + member Method: unit -> int + member Property: int + +> type OneFieldRecordNoXmlDoc = + { OneField: obj } + +> type OneFieldRecordXmlDoc = + { + OneField: obj + } + +> type TwoFieldRecordNoXmlDoc = + { + TwoFields1: obj + TwoFields2: obj + } + +> type TwoFieldRecordXmlDoc = + { + TwoFields1: obj + TwoFields2: obj + } + +> type Int32 with + member ExtrinsicExtensionProperty: int +type Int32 with + member ExtrinsicExtensionMethod: unit -> int + +> val ``value with spaces in name`` : bool = true + +> val functionWhichTakesLongNameMixedParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int * + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int + -> ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int * + dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesLongNameTupledParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int * + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int * + ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int * + ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesLongNameCurriedParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int + -> bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int + -> cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int + -> dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesMixedLengthCurriedParametersA: + a: 'a -> b: 'b -> c: 'c -> ddddddddddddddddddddddddddddddddddddddddddddd: 'd + -> int + +> val functionWhichTakesMixedLengthCurriedParametersB: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: 'a -> b: 'b -> c: 'c -> d: 'd -> int + +> val f: ``parameter with spaces in name`` : int -> int + +> val functionWhichTakesAParameterPeeciselyPlusButNotOpAddition: + ``+`` : (int -> int -> int) -> int + +> val functionWhichTakesAParameterOpAddition: (+) : (int -> int -> int) -> int + +> val functionWhichTakesAParameterCalled_land: + ``land`` : (int -> int -> int) -> int + +> type RecordWithStrangeNames = + { + ``funky name`` : obj + op_Addition: obj + ``+`` : obj + ``land`` : obj + ``base`` : obj + } + +> type UnionWithSpacesInNamesOfCases = + | ``Funky name`` + | ``Funky name 2`` + +> type ``Type with spaces in name`` = + | A + | B + +> type op_Addition = + | A + | B + +> type ``land`` = + | A + | B + +> module ``Module with spaces in name`` = + val x: int = 1 + +> module op_Addition = + val x: int = 1 + +> module ``land`` = + val x: int = 1 + +> val ``+`` : x: 'a -> y: 'b -> int + +> val (+) : x: int -> y: int -> int + +> val ``base`` : int = 2 + +> val (mod) : int = 2 + +> val ``or`` : int = 2 + +> val ``land`` : int = 2 + +> val ``.ctor`` : int = 2 + +> val ``.cctor`` : int = 2 + +> [] +val SomeLiteralWithASomewhatLongName: string + = "SomeVeryLongLiteralValueWithLotsOfCharacters" +[] +val SomeLiteralWithASomewhatLongName2: string + = + "SomeVeryLongLiteralValueWithLotsOfCharactersSomeVeryLongLiteralValueWithLotsOfCharactersSomeVeryLongLiteralValueWithLotsOfCharacters" +[] +val ShortName: string = "hi" + +> val it: System.DayOfWeek = Tuesday + +> val internal f: unit -> int + +> val it: int = 1 + +> type internal CInternal = + new: unit -> CInternal + +> val it: unit = () + +> type internal CPublic = + new: unit -> CPublic + member MInternal: unit -> unit + +> val it: unit = () + +> type internal CPublic2 = + new: unit -> CPublic2 + member MPublic: unit -> int + +> val it: int = 1 + +> val inst1: TestLoadFile.ClassInFile1 + +> val inst2: TestLoadFile2.ClassInFile2 + +> > > diff --git a/tests/fsharp/core/printing/output.200.stderr.txt b/tests/fsharp/core/printing/output.200.stderr.txt new file mode 100644 index 00000000000..6926dcc9f34 --- /dev/null +++ b/tests/fsharp/core/printing/output.200.stderr.txt @@ -0,0 +1,348 @@ + + #blaaaaaa // blaaaaaa is not a known command;; + ^^^^^^^^^ + +stdin(219,1): warning FS3353: Invalid directive '#blaaaaaa ' + + + type Regression4319_T0 = static member (+-+-+) = "0 arguments";; + -----------------------------------------^^^^^ + +stdin(571,42): warning FS1172: Infix operator member '+-+-+' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1 = static member (+-+-+) x = "1 argument";; + -----------------------------------------^^^^^ + +stdin(572,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1b = static member (+-+-+) (x) = "1 (argument) [brackets make no diff]";; + -----------------------------------------^^^^^ + +stdin(573,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1c = static member (+-+-+) x = let a,b = x in "1 argument, tuple typed from RHS. Still not OK";; + -----------------------------------------^^^^^ + +stdin(574,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1d = static member (+-+-+) (x:int*int) = "1 argument, tuple typed from LHS. Still not OK";; + -----------------------------------------^^^^^ + +stdin(575,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T3 = static member (+-+-+) (x,y,z) = "3 arguments";; + -----------------------------------------^^^^^ + +stdin(577,42): warning FS1173: Infix operator member '+-+-+' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1 = static member (+-+-+) x moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(578,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1 = static member (+-+-+) x moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(578,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1b = static member (+-+-+) (x) moreArgs = "1 (argument) [brackets make no diff] and further args";; + -----------------------------------------^^^^^ + +stdin(579,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1b = static member (+-+-+) (x) moreArgs = "1 (argument) [brackets make no diff] and further args";; + -----------------------------------------^^^^^ + +stdin(579,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U2 = static member (+-+-+) (x,y) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(580,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U3 = static member (+-+-+) (x,y,z) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(581,42): warning FS1173: Infix operator member '+-+-+' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U3 = static member (+-+-+) (x,y,z) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(581,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (:=) = "COLON_EQUALS" + -------------------^^ + +stdin(584,20): warning FS1172: Infix operator member ':=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (:=) = "COLON_EQUALS" + -------------------^^ + +stdin(584,20): warning FS0086: The name '(:=)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (&) = "AMP" + -------------------^ + +stdin(588,20): warning FS1172: Infix operator member '&' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (&) = "AMP" + -------------------^ + +stdin(588,20): warning FS0086: The name '(&)' should not be used as a member name. If defining a static member for use from other CLI languages then use the name 'op_Amp' instead. + + + static member (&^) = "AMP_AMP" + -------------------^^ + +stdin(589,20): warning FS1172: Infix operator member '&^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (=) = "EQUALS" + -------------------^ + +stdin(590,20): warning FS1172: Infix operator member '=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (=) = "EQUALS" + -------------------^ + +stdin(590,20): warning FS0086: The name '(=)' should not be used as a member name. To define equality semantics for a type, override the 'Object.Equals' member. If defining a static member for use from other CLI languages then use the name 'op_Equality' instead. + + + static member (!=) = "INFIX_COMPARE_OP" + -------------------^^ + +stdin(592,20): warning FS1172: Infix operator member '!=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...=) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(596,20): warning FS1172: Infix operator member '...=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...!=) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^^ + +stdin(597,20): warning FS1172: Infix operator member '...!=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...<) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(598,20): warning FS1172: Infix operator member '...<' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...>) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(599,20): warning FS1172: Infix operator member '...>' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ($) = "DOLLAR" + -------------------^ + +stdin(601,20): warning FS1172: Infix operator member '$' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (<) = "LESS" + -------------------^ + +stdin(602,20): warning FS1172: Infix operator member '<' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (<) = "LESS" + -------------------^ + +stdin(602,20): warning FS0086: The name '(<)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name 'op_LessThan' instead. + + + static member (>) = "GREATER" + -------------------^ + +stdin(603,20): warning FS1172: Infix operator member '>' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (>) = "GREATER" + -------------------^ + +stdin(603,20): warning FS0086: The name '(>)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name 'op_GreaterThan' instead. + + + static member (@) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(604,20): warning FS1172: Infix operator member '@' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (@) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(604,20): warning FS0086: The name '(@)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (^) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(605,20): warning FS1172: Infix operator member '^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (^) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(605,20): warning FS0086: The name '(^)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (...@) = "INFIX_AT_HAT_OP" // with $. prefix + -------------------^^^^ + +stdin(606,20): warning FS1172: Infix operator member '...@' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...^) = "INFIX_AT_HAT_OP" // with $. prefix + -------------------^^^^ + +stdin(607,20): warning FS1172: Infix operator member '...^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (%) = "PERCENT_OP" + -------------------^ + +stdin(608,20): warning FS1172: Infix operator member '%' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (-) = "MINUS" + -------------------^ + +stdin(610,20): warning FS1172: Infix operator member '-' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( * ) = "STAR" + --------------------^ + +stdin(611,21): warning FS1172: Infix operator member '*' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (/) = "INFIX_STAR_DIV_MOD_OP" + -------------------^ + +stdin(613,20): warning FS1172: Infix operator member '/' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ...* ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(615,21): warning FS1172: Infix operator member '...*' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( .../ ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(616,21): warning FS1172: Infix operator member '.../' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ...% ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(617,21): warning FS1172: Infix operator member '...%' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ** ) = "INFIX_STAR_STAR_OP" + --------------------^^ + +stdin(618,21): warning FS1172: Infix operator member '**' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + member this.ToString() = "ABC" + ----------------^^^^^^^^ + +stdin(623,17): warning FS0864: This new member hides the abstract member 'System.Object.ToString() : string'. Rename the member or use 'override' instead. + + + let x,f = it, (fun () -> !it);; // this will read from the static storage for 'it' + -------------------------^ + +stdin(643,26): info FS3370: The use of '!' from the F# library is deprecated. See https://aka.ms/fsharp-refcell-ops. For example, please change '!cell' to 'cell.Value'. + + + x := 3;; + --^^ + +stdin(645,3): info FS3370: The use of ':=' from the F# library is deprecated. See https://aka.ms/fsharp-refcell-ops. For example, please change 'cell := expr' to 'cell.Value <- expr'. + + + member this.M() = "string" + ----------------^ + +stdin(764,17): error FS0438: Duplicate method. The method 'M' has the same name and signature as another method in type 'ExpectDupMethod'. + + + member this.P = "string" + ----------------^ + +stdin(771,17): error FS0438: Duplicate method. The method 'get_P' has the same name and signature as another method in type 'ExpectDupProperty'. + + + type public IBPublic = interface inherit IAPrivate abstract Q : int end + ------------------^^^^^^^^ + +stdin(778,19): error FS0410: The type 'IAPrivate' is less accessible than the value, member or type 'IBPublic' it is used in. + + + type internal IBInternal = interface inherit IAPrivate abstract Q : int end + ------------------^^^^^^^^^^ + +stdin(783,19): error FS0410: The type 'IAPrivate' is less accessible than the value, member or type 'IBInternal' it is used in. + + + type public IBPublic = interface inherit IAInternal abstract Q : int end + ------------------^^^^^^^^ + +stdin(792,19): error FS0410: The type 'IAInternal' is less accessible than the value, member or type 'IBPublic' it is used in. + + + override x.M(a:string) = 1 + -------------------^ + +stdin(824,20): error FS0361: The override 'M: string -> int' implements more than one abstract slot, e.g. 'abstract Regression4232.D.M: 'U -> int' and 'abstract Regression4232.D.M: 'T -> int' + + + let (|A|B|) (x:int) = A x;; + -----^^^^^ + +stdin(832,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) (x:'a) = A x;; + -----^^^^^ + +stdin(835,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) (p:'a) (x:int) = A p;; + -----^^^^^ + +stdin(838,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) = failwith "" : Choice;; + -----^^^^^ + +stdin(844,6): error FS1209: Active pattern '|A|B|' is not a function + diff --git a/tests/fsharp/core/printing/output.200.stdout.txt b/tests/fsharp/core/printing/output.200.stdout.txt new file mode 100644 index 00000000000..352b5e2cbee --- /dev/null +++ b/tests/fsharp/core/printing/output.200.stdout.txt @@ -0,0 +1,1994 @@ + +> val it: unit = () + +> val repeatId: string = "A" + +> val repeatId: string = "B" + +namespace FSI_0005 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile1 = + new: unit -> ClassInFile1 + +namespace FSI_0006 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile1 = + new: unit -> ClassInFile1 + +namespace FSI_0006 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile2 = + new: unit -> ClassInFile2 + +> val x1: seq +val x2: seq +val x3: seq +val f1: System.Windows.Forms.Form = System.Windows.Forms.Form, Text: f1 form +val fs: System.Windows.Forms.Form[] = + [|System.Windows.Forms.Form, Text: fs #0; + System.Windows.Forms.Form, Text: fs #1; + System.Windows.Forms.Form, Text: fs #2; + System.Windows.Forms.Form, Text: fs #3; + System.Windows.Forms.Form, Text: fs #4; + System.Windows.Forms.Form, Text: fs #5; + System.Windows.Forms.Form, Text: fs #6; + System.Windows.Forms.Form, Text: fs #7; + System.Windows.Forms.Form, Text: fs #8; + System.Windows.Forms.Form, Text: fs #9; + System.Windows.Forms.Form, Text: fs #10; + System.Windows.Forms.Form, Text: fs #11; + System.Windows.Forms.Form, Text: fs #12; + System.Windows.Forms.Form, Text: fs #13; + System.Windows.Forms.Form, Text: fs #14; + System.Windows.Forms.Form, Text: fs #15; + System.Windows.Forms.Form, Text: fs #16; + System.Windows.Forms.Form, Text: fs #17; + System.Windows.Forms.Form, Text: fs #18; + System.Windows.Forms.Form, Text: fs #19; ...|] +val xs: string list = + ["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; "13"; + "14"; "15"; "16"; "17"; "18"; "19"; ...] +val xa: string[] = + [|"0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; "13"; + "14"; "15"; "16"; "17"; "18"; "19"; ...|] +val xa2: string[,] = [["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"] + ["10"; "11"; "12"; "13"; "14"; "15"; "16"; "17"] + ["20"; "21"; "22"; "23"; ...] + ...] +val sxs0: Set = set [] + +> val sxs1: Set = set ["0"] + +> val sxs2: Set = set ["0"; "1"] + +> val sxs3: Set = set ["0"; "1"; "2"] + +> val sxs4: Set = set ["0"; "1"; "2"; "3"] + +> val sxs200: Set = + set ["0"; "1"; "10"; "100"; "101"; "102"; "103"; "104"; "105"; ...] + +> val msxs0: Map = map [] + +> val msxs1: Map = map [(0, "0")] + +> val msxs2: Map = map [(0, "0"); (1, "1")] + +> val msxs3: Map = map [(0, "0"); (1, "1"); (2, "2")] + +> val msxs4: Map = map [(0, "0"); (1, "1"); (2, "2"); (3, "3")] + +> val msxs200: Map = + map + [(0, "0"); (1, "1"); (2, "2"); (3, "3"); (4, "4"); (5, "5"); (6, "6"); + (7, "7"); (8, "8"); ...] + +> module M = + val a: string = "sub-binding" + val b: + (seq * seq * seq * System.Windows.Forms.Form) option * + (string list * string list * string[,]) option = + (Some (, , , System.Windows.Forms.Form, Text: f1 form), + Some + (["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; + "13"; "14"; "15"; "16"; ...], ..., ...)) +type T = + new: a: int * b: int -> T + member AMethod: x: int -> int + static member StaticMethod: x: int -> int + member AProperty: int + static member StaticProperty: int +val f_as_method: x: int -> int +val f_as_thunk: (int -> int) +val refCell: string ref = { contents = "value" } +module D1 = + val words: System.Collections.Generic.IDictionary + val words2000: System.Collections.Generic.IDictionary + +> > module D2 = + val words: IDictionary + val words2000: IDictionary +val opt1: 'a option +val opt1b: int option = None +val opt4: 'a option option option option +val opt4b: int option option option option = Some (Some (Some None)) +val opt5: int list option option option option option list = + [Some (Some (Some (Some None))); + Some (Some (Some (Some (Some [1; 2; 3; 4; 5; 6])))); + Some (Some (Some (Some ...))); ...] +val mkStr: n: int -> string +val strs: string[] = + [|""; "-"; "--"; "---"; "----"; "-----"; "------"; "-------"; "--------"; + "---------"; "----------"; "-----------"; "------------"; "-------------"; + "--------------"; "---------------"; "----------------"; + "-----------------"; "------------------"; "-------------------"; ...|] +val str7s: string[] = + [|""; "-------"; "--------------"; "---------------------"; + "----------------------------"; "-----------------------------------"; + "------------------------------------------"; + "-------------------------------------------------"; + "--------------------------------------------------------"; + "---------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[58 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[72 chars]; + ...|] +val grids: string[,] = + [[""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; + ""; ...] + ...] + +> type tree = + | L + | N of tree list +val mkT: w: int -> d: int -> tree +val tree: w: int -> d: int -> tree + +> [Building 2 4...done] +val tree_2_4: tree = + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; ...]; ...]; ...]; ...] + +> [Building 2 6...done] +val tree_2_6: tree = + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; N [N ...; ...]; + ...]; ...]; ...] + +> [Building 2 8...done] +val tree_2_8: tree = + N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 2 10...done] +val tree_2_10: tree = + N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N ...; ...]; + ...]; ...]; ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 2 12...done] +val tree_2_12: tree = + N [N [N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...]; ...]; ...]; + ...]; ...] + +> [Building 2 14...done] +val tree_2_14: tree = + N [N [N [N [N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N ...; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...]; ...]; ...]; + ...]; ...] + +> [Building 3 8...done] +val tree_3_8: tree = + N [N [N [N [N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; N ...; ...]; + ...]; ...]; ...]; ...]; ...] + +> [Building 4 8...done] +val tree_4_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 5 8...done] +val tree_5_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N ...; ...]; ...]; + ...]; ...]; ...]; ...]; ...] + +> [Building 6 8...done] +val tree_6_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L; L; L]; N [L; L; L; L; L; ...]; ...]; ...]; + ...]; ...]; ...]; ...]; ...] + +> [Building 5 3...done] +val tree_5_3: tree = + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L; ...]; ...]; + ...] + +> > type X = + | Var of int + | Bop of int * X * X +val generate: x: int -> X + +> val exps: X list = + [Bop (1, Var 0, Var 0); Var 2; + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, ...)); ...] + +> module Exprs = + val x1: X = + Bop + (213, Var 106, + Bop + (71, + Bop (35, Bop (17, Var 8, Bop (5, Var 2, Bop (1, Var 0, ...))), ...), + ...)) + val x2: X = Var 21342314 + val x3: X = Var 3214 + val x4: X = Bop (1231357, Var 615678, Var 410452) + val x5: X = + Bop + (5234547, Bop (2617273, Var 1308636, Var 872424), + Bop (1744849, Var 872424, Var 581616)) + val x6: X = + Bop + (923759825, Var 461879912, Bop (307919941, Var 153959970, Var 102639980)) + val x7: X = Var 2435234 + val x8: X = + Bop + (12396777, Var 6198388, + Bop + (4132259, + Bop + (2066129, Var 1033064, + Bop + (688709, Var 344354, + Bop (229569, Var 114784, Bop (76523, ..., ...)))), ...)) + val x9: X = + Bop + (3333333, Var 1666666, + Bop + (1111111, + Bop + (555555, Bop (277777, Var 138888, Var 92592), + Bop (185185, Var 92592, Var 61728)), ...)) + val x10: X = + Bop + (1312311237, Var 656155618, + Bop + (437437079, + Bop + (218718539, + Bop + (109359269, Var 54679634, + Bop (36453089, Var 18226544, Bop (12151029, Var 6075514, ...))), + ...), ...)) + val x11: X = + Bop + (2147483647, + Bop + (1073741823, + Bop + (536870911, + Bop + (268435455, + Bop + (134217727, + Bop + (67108863, + Bop + (33554431, + Bop + (16777215, + Bop (8388607, Bop (4194303, ..., ...), ...), ...), + ...), ...), ...), ...), ...), ...), ...) + +> type C = + new: x: string -> C + override ToString: unit -> string +val c1: C = +val csA: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] +val csB: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] +val csC: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] + +> exception Abc + +> exception AbcInt of int + +> exception AbcString of string + +> exception AbcExn of exn list + +> exception AbcException of System.Exception list + +> val exA1: exn = Abc +val exA2: exn = AbcInt 2 +val exA3: exn = AbcString "3" +val exA4: exn = AbcExn [Abc; AbcInt 2; AbcString "3"] +val exA5: exn = AbcException [AbcExn [Abc; AbcInt 2; AbcString "3"]] +exception Ex0 +exception ExUnit of unit +exception ExUnits of unit * unit +exception ExUnitOption of unit option +val ex0: exn = Ex0 +val exU: exn = ExUnit () +val exUs: exn = ExUnits ((), ()) +val exUSome: exn = ExUnitOption (Some ()) +val exUNone: exn = ExUnitOption None +type 'a T4063 = | AT4063 of 'a + +> val valAT3063_12: int T4063 = AT4063 12 + +> val valAT3063_True: bool T4063 = AT4063 true + +> val valAT3063_text: string T4063 = AT4063 "text" + +> val valAT3063_null: System.Object T4063 = AT4063 null + +> type M4063<'a> = + new: x: 'a -> M4063<'a> + +> val v4063: M4063 + +> type Taaaaa<'a> = + new: unit -> Taaaaa<'a> + +> type Taaaaa2<'a> = + inherit Taaaaa<'a> + new: unit -> Taaaaa2<'a> + member M: unit -> Taaaaa2<'a> + +> type Tbbbbb<'a> = + new: x: 'a -> Tbbbbb<'a> + member M: unit -> 'a + +> type Tbbbbb2 = + inherit Tbbbbb + new: x: string -> Tbbbbb2 + +> val it: (unit -> string) = + +> module RepeatedModule = + val repeatedByteLiteral: byte[] = [|12uy; 13uy; 14uy|] + +> module RepeatedModule = + val repeatedByteLiteral: byte[] = [|12uy; 13uy; 14uy|] + +> val it: string = "Check #help" + +> + F# Interactive directives: + + #r "file.dll";; // Reference (dynamically load) the given DLL + #i "package source uri";; // Include package source uri when searching for packages + #I "path";; // Add the given search path for referenced DLLs + #load "file.fs" ...;; // Load the given file(s) as if compiled and referenced + #time ["on"|"off"];; // Toggle timing on/off + #help;; // Display help + #r "nuget:FSharp.Data, 3.1.2";; // Load Nuget Package 'FSharp.Data' version '3.1.2' + #r "nuget:FSharp.Data";; // Load Nuget Package 'FSharp.Data' with the highest version + #quit;; // Exit + + F# Interactive command line options: + + + +> val it: string = "Check #time on and then off" + +> +--> Timing now on + +> +--> Timing now off + +> val it: string = "Check #unknown command" + +> val it: string = + "Check #I with a known directory (to avoid a warning, which includes the location of this file, which is fragile...)" + +> +--> Added '/' to library include path + +> type internal T1 = + | A + | B + +> type internal T2 = + { x: int } + +> type internal T3 + +> type internal T4 = + new: unit -> T4 + +> type T1 = + internal | A + | B + +> type T2 = + internal { x: int } + +> type private T1 = + | A + | B + +> type private T2 = + { x: int } + +> type T1 = + private | A + | B + +> type T2 = + private { x: int } + +> type internal T1 = + private | A + | B + +> type internal T2 = + private { x: int } + +> type private T3 + +> type private T4 = + new: unit -> T4 + +> exception X1 of int + +> exception private X2 of int + +> exception internal X3 of int + +> type T0 = + new: unit -> T0 +type T1Post<'a> = + new: unit -> T1Post<'a> +type 'a T1Pre = + new: unit -> 'a T1Pre + +> type T0 with + member M: unit -> T0 list +type T0 with + member P: T0 * T0 +type T0 with + member E: IEvent + +> type T1Post<'a> with + member M: unit -> T1Post<'a> list +type T1Post<'a> with + member P: T1Post<'a> * T1Post<'a> +type T1Post<'a> with + member E: IEvent + +> type 'a T1Pre with + member M: unit -> 'a T1Pre list +type 'a T1Pre with + member P: 'a T1Pre * 'a T1Pre +type 'a T1Pre with + member E: IEvent + +> type T1Post<'a> with + member M: unit -> T1Post<'a> list +type T1Post<'a> with + member P: T1Post<'a> * T1Post<'a> +type T1Post<'a> with + member E: IEvent + +> type 'a T1Pre with + member M: unit -> 'a T1Pre list +type 'a T1Pre with + member P: 'a T1Pre * 'a T1Pre +type 'a T1Pre with + member E: IEvent + +> type r = + { + f0: int + f1: int + f2: int + f3: int + f4: int + f5: int + f6: int + f7: int + f8: int + f9: int + } +val r10: r = { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 } +val r10s: r[] = [|{ f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; ...|] +val r10s': string * r[] = ("one extra node", [|{ f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = ... }; ...|]) + +> val x1564_A1: int = 1 + + +--> Added '\' to library include path + +val x1564_A2: int = 2 + + +--> Added '\' to library include path + +val x1564_A3: int = 3 + +> type internal Foo2 = + private new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member private Prop3: int + +> module internal InternalM = + val x: int = 1 + type Foo2 = + private new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member private Prop3: int + type private Foo3 = + new: x: int * y: int * z: int -> Foo3 + 3 overloads + member Prop1: int + member Prop2: int + member Prop3: int + type T1 = + | A + | B + type T2 = + { x: int } + type T3 + type T4 = + new: unit -> T4 + type T5 = + | A + | B + type T6 = + { x: int } + type private T7 = + | A + | B + type private T8 = + { x: int } + type T9 = + private | A + | B + type T10 = + private { x: int } + type T11 = + private | A + | B + type T12 = + private { x: int } + type private T13 + type private T14 = + new: unit -> T14 +module internal PrivateM = + val private x: int = 1 + type private Foo2 = + new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member Prop3: int + type T1 = + | A + | B + type T2 = + { x: int } + type T3 + type T4 = + new: unit -> T4 + type T5 = + | A + | B + type T6 = + { x: int } + type private T7 = + | A + | B + type private T8 = + { x: int } + type T9 = + private | A + | B + type T10 = + private { x: int } + type T11 = + private | A + | B + type T12 = + private { x: int } + type private T13 + type private T14 = + new: unit -> T14 + +> val it: seq = + seq + [(43, "10/28/2008", 1); (46, "11/18/2008", 1); (56, "1/27/2009", 2); + (58, "2/10/2009", 1)] + +> module Test4343a = + val mk: i: int -> string + val x100: string = + "0123456789012345678901234567890123456789012345678901234567890"+[39 chars] + val x90: string = + "0123456789012345678901234567890123456789012345678901234567890"+[29 chars] + val x80: string = + "0123456789012345678901234567890123456789012345678901234567890"+[19 chars] + val x75: string = + "0123456789012345678901234567890123456789012345678901234567890"+[14 chars] + val x74: string = + "0123456789012345678901234567890123456789012345678901234567890"+[13 chars] + val x73: string = + "0123456789012345678901234567890123456789012345678901234567890"+[12 chars] + val x72: string = + "012345678901234567890123456789012345678901234567890123456789012345678901" + val x71: string = + "01234567890123456789012345678901234567890123456789012345678901234567890" + val x70: string = + "0123456789012345678901234567890123456789012345678901234567890123456789" +module Test4343b = + val fA: x: int -> int + val fB: x: 'a -> y: 'a -> 'a list + val gA: (int -> int) + val gB: ('a -> 'a -> 'a list) + val gAB: (int -> int) * ('a -> 'a -> 'a list) + val hB: ('a -> 'a -> 'a list) + val hA: (int -> int) +module Test4343c = + val typename<'a> : string + val typename2<'a> : string * string +module Test4343d = + val xList: int list = [1; 2; 3] + val xArray: int[] = [|1; 2; 3|] + val xString: string = "abcdef" + val xOption: int option = Some 12 + val xArray2: (int * int)[,] = [[(0, 0); (0, 1)] + [(1, 0); (1, 1)]] + val xSeq: seq +module Test4343e = + type C = + new: x: int -> C + val cA: C + val cB: C + val cAB: C * C * C list = + (FSI_0091+Test4343e+C, FSI_0091+Test4343e+C, + [FSI_0091+Test4343e+C; FSI_0091+Test4343e+C]) + type D = + new: x: int -> D + override ToString: unit -> string + val dA: D = D(1) + val dB: D = D(2) + val dAB: D * D * D list = (D(1), D(2), [D(1); D(2)]) + module Generic = + type CGeneric<'a> = + new: x: 'a -> CGeneric<'a> + val cA: C + val cB: C + val cAB: C * C * C list = + (FSI_0091+Test4343e+C, FSI_0091+Test4343e+C, + [FSI_0091+Test4343e+C; FSI_0091+Test4343e+C]) + type D<'a> = + new: x: 'a -> D<'a> + override ToString: unit -> string + val dA: D = D(1) + val dB: D = D(2) + val dAB: D * D * D list = (D(1), D(2), [D(1); D(2)]) + val dC: D = D(True) + val boxed_dABC: obj list = [D(1); D(2); D(True)] +type F1 = + inherit System.Windows.Forms.Form + interface System.IDisposable + val x: F1 + val x2: F1 + member B: unit -> int + member D: x: int -> int + 2 overloads + abstract MMM: bool -> bool + override ToString: unit -> string + static member A: unit -> int + static member C: unit -> int + abstract AAA: int + abstract BBB: bool with set + member D2: int + member E: int + abstract ZZZ: int + static val mutable private sx: F1 + static val mutable private sx2: F1 +[] +type IP = + new: x: int * y: int -> IP + static val mutable private AA: IP +module Regression4643 = + [] + type RIP = + new: x: int -> RIP + static val mutable private y: RIP + [] + type arg_unused_is_RIP = + new: x: RIP -> arg_unused_is_RIP + [] + type arg_used_is_RIP = + new: x: RIP -> arg_used_is_RIP + member X: RIP + [] + type field_is_RIP = + val x: RIP +type Either<'a,'b> = + | This of 'a + | That of 'b +val catch: f: (unit -> 'a) -> Either<'a,(string * string)> +val seqFindIndexFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +val seqFindFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +val seqPickFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +module Regression5218 = + val t1: int = 1 + val t2: int * int = (1, 2) + val t3: int * int * int = (1, 2, 3) + val t4: int * int * int * int = (1, 2, 3, 4) + val t5: int * int * int * int * int = (1, 2, 3, 4, 5) + val t6: int * int * int * int * int * int = (1, 2, 3, 4, 5, 6) + val t7: int * int * int * int * int * int * int = (1, 2, 3, 4, 5, 6, 7) + val t8: int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8) + val t9: int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9) + val t10: int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) + val t11: int * int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11) + val t12: + int * int * int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12) + val t13: + int * int * int * int * int * int * int * int * int * int * int * int * + int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13) + val t14: + int * int * int * int * int * int * int * int * int * int * int * int * + int * int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14) + val t15: + int * int * int * int * int * int * int * int * int * int * int * int * + int * int * int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15) + +> module Regression3739 = + type IB = + abstract AbstractMember: int -> int + type C<'a when 'a :> IB> = + new: unit -> C<'a> + static member StaticMember: x: 'a -> int + +> module Regression3739 = + type IB = + abstract AbstractMember: int -> int + type C<'a when 'a :> IB> = + new: unit -> C<'a> + static member StaticMember: x: 'a -> int + +> module Regression3740 = + type Writer<'a> = + abstract get_path: unit -> string + type MyClass = + interface Writer + val path: string + +> type Regression4319_T2 = + static member (+-+-+) : x: 'a * y: 'b -> string + +> type Regression4319_T0 = + static member (+-+-+) : string + +> type Regression4319_T1 = + static member (+-+-+) : x: 'a -> string + +> type Regression4319_T1b = + static member (+-+-+) : x: 'a -> string + +> type Regression4319_T1c = + static member (+-+-+) : x: ('a * 'b) -> string + +> type Regression4319_T1d = + static member (+-+-+) : x: (int * int) -> string + +> type Regression4319_T3 = + static member (+-+-+) : x: 'a * y: 'b * z: 'c -> string + +> type Regression4319_U1 = + static member (+-+-+) : x: 'a -> moreArgs: 'b -> string + +> type Regression4319_U1b = + static member (+-+-+) : x: 'a -> moreArgs: 'b -> string + +> type Regression4319_U2 = + static member (+-+-+) : x: 'a * y: 'b -> moreArgs: 'c -> string + +> type Regression4319_U3 = + static member (+-+-+) : x: 'a * y: 'b * z: 'c -> moreArgs: 'd -> string + +> type Regression4319_check = + static member (&) : string + static member (&^) : string + static member (@) : string + static member (!=) : string + static member (:=) : string + static member (^) : string + static member (/) : string + static member ($) : string + static member (...@) : string + static member (...!=) : string + static member (.../) : string + static member (...=) : string + static member (...>) : string + static member (...^) : string + static member (...<) : string + static member ( ...* ) : string + static member (...%) : string + static member (=) : string + static member ( ** ) : string + static member (>) : string + static member (<) : string + static member (%) : string + static member ( * ) : string + static member (-) : string + +> Expect ABC = ABC +type Regression4469 = + new: unit -> Regression4469 + member ToString: unit -> string +val r4469: Regression4469 = FSI_0107+Regression4469 +val it: unit = () + +> Expect ABC = ABC +val it: unit = () + +> module Regression1019_short = + val double_nan: float = nan + val double_infinity: float = infinity + val single_nan: float32 = nanf + val single_infinity: float32 = infinityf +module Regression1019_long = + val double_nan: float = nan + val double_infinity: float = infinity + val single_nan: float32 = nanf + val single_infinity: float32 = infinityf + +> val it: int ref = { contents = 1 } + +> val x: int ref = { contents = 1 } +val f: (unit -> int) + +> val it: int = 1 + +> val it: unit = () + +> val it: int = 3 + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: 'a list + +> val it: 'a list list + +> val it: 'a option + +> val it: 'a list * 'b list + +> val it: x: 'a -> 'a + +> val fff: x: 'a -> 'a + +> val it: ('a -> 'a) + +> val note_ExpectDupMethod: string = + "Regression4927: Expect error due to duplicate methods in the "+[20 chars] + +> > val note_ExpectDupProperty: string = + "Regression4927: Expect error due to duplicate properties in t"+[23 chars] + +> > > val it: string = "NOTE: Expect IAPrivate less accessible IBPublic" + +> > val it: string = "NOTE: Expect IAPrivate less accessible IBInternal" + +> > module Regression5265_PriPri = + type private IAPrivate = + abstract P: int + type private IBPrivate = + inherit IAPrivate + abstract Q: int + +> val it: string = "NOTE: Expect IAInternal less accessible IBPublic" + +> > module Regression5265_IntInt = + type internal IAInternal = + abstract P: int + type internal IBInternal = + inherit IAInternal + abstract Q: int + +> module Regression5265_IntPri = + type internal IAInternal = + abstract P: int + type private IBPrivate = + inherit IAInternal + abstract Q: int + +> module Regression5265_PubPub = + type IAPublic = + abstract P: int + type IBPublic = + inherit IAPublic + abstract Q: int + +> module Regression5265_PubInt = + type IAPublic = + abstract P: int + type internal IBInternal = + inherit IAPublic + abstract Q: int + +> module Regression5265_PubPri = + type IAPublic = + abstract P: int + type private IBPrivate = + inherit IAPublic + abstract Q: int + +> val it: string = + "Regression4232: Expect an error about duplicate virtual methods from parent type" + +> > val it: string = + "** Expect AnAxHostSubClass to be accepted. AxHost has a newslot virtual RightToLeft property outscope RightToLeft on Control" + +> type AnAxHostSubClass = + inherit System.Windows.Forms.AxHost + new: x: string -> AnAxHostSubClass + +> val it: string = + "** Expect error because the active pattern result contains free type variables" + +> > val it: string = + "** Expect error because the active pattern result contains free type variables (match value generic)" + +> > val it: string = + "** Expect error because the active pattern result contains free type variables (when active pattern also has parameters)" + +> > val it: string = + "** Expect OK, since error message says constraint should work!" + +> val (|A|B|) : x: int -> Choice + +> val it: string = "** Expect error since active pattern is not a function!" + +> > val it: string = + "** Expect OK since active pattern result is not too generic, typars depend on match val" + +> val (|A|B|) : p: bool -> 'a * 'b -> Choice<'a,'b> + +> val it: string = + "** Expect OK since active pattern result is not too generic, typars depend on parameters" + +> val (|A|B|) : aval: 'a -> bval: 'b -> x: bool -> Choice<'a,'b> + +> val it: string = + "** Expect OK since active pattern result is generic, but it typar from closure, so OK" + +> val outer: x: 'a -> (int -> 'a option) + +> val it: string = + "** Expect OK, BUG 472278: revert unintended breaking change to Active Patterns in F# 3.0" + +> val (|Check1|) : a: int -> int * 'a option + +> > module ReflectionEmit = + type IA = + abstract M: #IB -> int + and IB = + abstract M: #IA -> int + type IA2<'a when 'a :> IB2<'a> and 'a :> IA2<'a>> = + abstract M: int + and IB2<'b when 'b :> IA2<'b> and 'b :> IB2<'b>> = + abstract M: int + +> val it: string = + "Regression_139182: Expect the follow code to be accepted without error" + +> [] +type S = + member TheMethod: unit -> int64 +val theMethod: s: S -> int64 +type T = + new: unit -> T + member Prop5: int64 + static member Prop1: int64 + static member Prop2: int64 + static member Prop3: int64 + static member Prop4: string + +> val it: System.Threading.ThreadLocal list = [0 {IsValueCreated = false; + Values = ?;}] + +> type MyDU = + | Case1 of Val1: int * Val2: string + | Case2 of string * V2: bool * float + | Case3 of int + | Case4 of Item1: bool + | Case5 of bool * string + | Case6 of Val1: int * bool * string + | Case7 of ``Big Name`` : int +val namedFieldVar1: MyDU = Case1 (5, "") +val namedFieldVar2: MyDU = Case7 25 + +> exception MyNamedException1 of Val1: int * Val2: string +exception MyNamedException2 of string * V2: bool * float +exception MyNamedException3 of Data: int +exception MyNamedException4 of bool +exception MyNamedException5 of int * string +exception MyNamedException6 of Val1: int * bool * string * Data8: float +exception MyNamedException7 of ``Big Named Field`` : int +val namedEx1: exn = MyNamedException1 (5, "") +val namedEx2: exn = MyNamedException7 25 + +> type optionRecord = + { x: int option } +val x: optionRecord = { x = None } + +> type optionRecord = + { x: obj } +val x: optionRecord = { x = null } + +> type RecordWithMembers = + { x: obj } + member Method: unit -> int + member Property: int + +> type UnionWithMembers = + | Case1 + | Case2 of int + member Method: unit -> int + member Property: int + +> type OneFieldRecordNoXmlDoc = + { OneField: obj } + +> type OneFieldRecordXmlDoc = + { + OneField: obj + } + +> type TwoFieldRecordNoXmlDoc = + { + TwoFields1: obj + TwoFields2: obj + } + +> type TwoFieldRecordXmlDoc = + { + TwoFields1: obj + TwoFields2: obj + } + +> type Int32 with + member ExtrinsicExtensionProperty: int +type Int32 with + member ExtrinsicExtensionMethod: unit -> int + +> val ``value with spaces in name`` : bool = true + +> val functionWhichTakesLongNameMixedParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int * + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int + -> ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int * + dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesLongNameTupledParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int * + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int * + ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int * + ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesLongNameCurriedParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int + -> bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int + -> cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int + -> dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesMixedLengthCurriedParametersA: + a: 'a -> b: 'b -> c: 'c -> ddddddddddddddddddddddddddddddddddddddddddddd: 'd + -> int + +> val functionWhichTakesMixedLengthCurriedParametersB: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: 'a -> b: 'b -> c: 'c -> d: 'd -> int + +> val f: ``parameter with spaces in name`` : int -> int + +> val functionWhichTakesAParameterPeeciselyPlusButNotOpAddition: + ``+`` : (int -> int -> int) -> int + +> val functionWhichTakesAParameterOpAddition: (+) : (int -> int -> int) -> int + +> val functionWhichTakesAParameterCalled_land: + ``land`` : (int -> int -> int) -> int + +> type RecordWithStrangeNames = + { + ``funky name`` : obj + op_Addition: obj + ``+`` : obj + ``land`` : obj + ``base`` : obj + } + +> type UnionWithSpacesInNamesOfCases = + | ``Funky name`` + | ``Funky name 2`` + +> type ``Type with spaces in name`` = + | A + | B + +> type op_Addition = + | A + | B + +> type ``land`` = + | A + | B + +> module ``Module with spaces in name`` = + val x: int = 1 + +> module op_Addition = + val x: int = 1 + +> module ``land`` = + val x: int = 1 + +> val ``+`` : x: 'a -> y: 'b -> int + +> val (+) : x: int -> y: int -> int + +> val ``base`` : int = 2 + +> val (mod) : int = 2 + +> val ``or`` : int = 2 + +> val ``land`` : int = 2 + +> val ``.ctor`` : int = 2 + +> val ``.cctor`` : int = 2 + +> [] +val SomeLiteralWithASomewhatLongName: string + = "SomeVeryLongLiteralValueWithLotsOfCharacters" +[] +val SomeLiteralWithASomewhatLongName2: string + = + "SomeVeryLongLiteralValueWithLotsOfCharactersSomeVeryLongLiteralValueWithLotsOfCharactersSomeVeryLongLiteralValueWithLotsOfCharacters" +[] +val ShortName: string = "hi" + +> val it: System.DayOfWeek = Tuesday + +> val internal f: unit -> int + +> val it: int = 1 + +> type internal CInternal = + new: unit -> CInternal + +> val it: unit = () + +> type internal CPublic = + new: unit -> CPublic + member MInternal: unit -> unit + +> val it: unit = () + +> type internal CPublic2 = + new: unit -> CPublic2 + member MPublic: unit -> int + +> val it: int = 1 + +> val inst1: TestLoadFile.ClassInFile1 + +> val inst2: TestLoadFile2.ClassInFile2 + +> > > diff --git a/tests/fsharp/core/printing/output.47.stderr.txt b/tests/fsharp/core/printing/output.47.stderr.txt new file mode 100644 index 00000000000..4d3209ca246 --- /dev/null +++ b/tests/fsharp/core/printing/output.47.stderr.txt @@ -0,0 +1,336 @@ + + #blaaaaaa // blaaaaaa is not a known command;; + ^^^^^^^^^ + +stdin(219,1): warning FS3353: Invalid directive '#blaaaaaa ' + + + type Regression4319_T0 = static member (+-+-+) = "0 arguments";; + -----------------------------------------^^^^^ + +stdin(571,42): warning FS1172: Infix operator member '+-+-+' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1 = static member (+-+-+) x = "1 argument";; + -----------------------------------------^^^^^ + +stdin(572,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1b = static member (+-+-+) (x) = "1 (argument) [brackets make no diff]";; + -----------------------------------------^^^^^ + +stdin(573,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1c = static member (+-+-+) x = let a,b = x in "1 argument, tuple typed from RHS. Still not OK";; + -----------------------------------------^^^^^ + +stdin(574,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1d = static member (+-+-+) (x:int*int) = "1 argument, tuple typed from LHS. Still not OK";; + -----------------------------------------^^^^^ + +stdin(575,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T3 = static member (+-+-+) (x,y,z) = "3 arguments";; + -----------------------------------------^^^^^ + +stdin(577,42): warning FS1173: Infix operator member '+-+-+' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1 = static member (+-+-+) x moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(578,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1 = static member (+-+-+) x moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(578,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1b = static member (+-+-+) (x) moreArgs = "1 (argument) [brackets make no diff] and further args";; + -----------------------------------------^^^^^ + +stdin(579,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1b = static member (+-+-+) (x) moreArgs = "1 (argument) [brackets make no diff] and further args";; + -----------------------------------------^^^^^ + +stdin(579,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U2 = static member (+-+-+) (x,y) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(580,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U3 = static member (+-+-+) (x,y,z) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(581,42): warning FS1173: Infix operator member '+-+-+' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U3 = static member (+-+-+) (x,y,z) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(581,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (:=) = "COLON_EQUALS" + -------------------^^ + +stdin(584,20): warning FS1172: Infix operator member ':=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (:=) = "COLON_EQUALS" + -------------------^^ + +stdin(584,20): warning FS0086: The name '(:=)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (&) = "AMP" + -------------------^ + +stdin(588,20): warning FS1172: Infix operator member '&' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (&) = "AMP" + -------------------^ + +stdin(588,20): warning FS0086: The name '(&)' should not be used as a member name. If defining a static member for use from other CLI languages then use the name 'op_Amp' instead. + + + static member (&^) = "AMP_AMP" + -------------------^^ + +stdin(589,20): warning FS1172: Infix operator member '&^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (=) = "EQUALS" + -------------------^ + +stdin(590,20): warning FS1172: Infix operator member '=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (=) = "EQUALS" + -------------------^ + +stdin(590,20): warning FS0086: The name '(=)' should not be used as a member name. To define equality semantics for a type, override the 'Object.Equals' member. If defining a static member for use from other CLI languages then use the name 'op_Equality' instead. + + + static member (!=) = "INFIX_COMPARE_OP" + -------------------^^ + +stdin(592,20): warning FS1172: Infix operator member '!=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...=) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(596,20): warning FS1172: Infix operator member '...=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...!=) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^^ + +stdin(597,20): warning FS1172: Infix operator member '...!=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...<) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(598,20): warning FS1172: Infix operator member '...<' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...>) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(599,20): warning FS1172: Infix operator member '...>' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ($) = "DOLLAR" + -------------------^ + +stdin(601,20): warning FS1172: Infix operator member '$' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (<) = "LESS" + -------------------^ + +stdin(602,20): warning FS1172: Infix operator member '<' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (<) = "LESS" + -------------------^ + +stdin(602,20): warning FS0086: The name '(<)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name 'op_LessThan' instead. + + + static member (>) = "GREATER" + -------------------^ + +stdin(603,20): warning FS1172: Infix operator member '>' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (>) = "GREATER" + -------------------^ + +stdin(603,20): warning FS0086: The name '(>)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name 'op_GreaterThan' instead. + + + static member (@) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(604,20): warning FS1172: Infix operator member '@' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (@) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(604,20): warning FS0086: The name '(@)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (^) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(605,20): warning FS1172: Infix operator member '^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (^) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(605,20): warning FS0086: The name '(^)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (...@) = "INFIX_AT_HAT_OP" // with $. prefix + -------------------^^^^ + +stdin(606,20): warning FS1172: Infix operator member '...@' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...^) = "INFIX_AT_HAT_OP" // with $. prefix + -------------------^^^^ + +stdin(607,20): warning FS1172: Infix operator member '...^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (%) = "PERCENT_OP" + -------------------^ + +stdin(608,20): warning FS1172: Infix operator member '%' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (-) = "MINUS" + -------------------^ + +stdin(610,20): warning FS1172: Infix operator member '-' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( * ) = "STAR" + --------------------^ + +stdin(611,21): warning FS1172: Infix operator member '*' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (/) = "INFIX_STAR_DIV_MOD_OP" + -------------------^ + +stdin(613,20): warning FS1172: Infix operator member '/' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ...* ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(615,21): warning FS1172: Infix operator member '...*' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( .../ ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(616,21): warning FS1172: Infix operator member '.../' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ...% ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(617,21): warning FS1172: Infix operator member '...%' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ** ) = "INFIX_STAR_STAR_OP" + --------------------^^ + +stdin(618,21): warning FS1172: Infix operator member '**' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + member this.ToString() = "ABC" + ----------------^^^^^^^^ + +stdin(623,17): warning FS0864: This new member hides the abstract member 'System.Object.ToString() : string'. Rename the member or use 'override' instead. + + + member this.M() = "string" + ----------------^ + +stdin(764,17): error FS0438: Duplicate method. The method 'M' has the same name and signature as another method in type 'ExpectDupMethod'. + + + member this.P = "string" + ----------------^ + +stdin(771,17): error FS0438: Duplicate method. The method 'get_P' has the same name and signature as another method in type 'ExpectDupProperty'. + + + type public IBPublic = interface inherit IAPrivate abstract Q : int end + ------------------^^^^^^^^ + +stdin(778,19): error FS0410: The type 'IAPrivate' is less accessible than the value, member or type 'IBPublic' it is used in. + + + type internal IBInternal = interface inherit IAPrivate abstract Q : int end + ------------------^^^^^^^^^^ + +stdin(783,19): error FS0410: The type 'IAPrivate' is less accessible than the value, member or type 'IBInternal' it is used in. + + + type public IBPublic = interface inherit IAInternal abstract Q : int end + ------------------^^^^^^^^ + +stdin(792,19): error FS0410: The type 'IAInternal' is less accessible than the value, member or type 'IBPublic' it is used in. + + + override x.M(a:string) = 1 + -------------------^ + +stdin(824,20): error FS0361: The override 'M: string -> int' implements more than one abstract slot, e.g. 'abstract Regression4232.D.M: 'U -> int' and 'abstract Regression4232.D.M: 'T -> int' + + + let (|A|B|) (x:int) = A x;; + -----^^^^^ + +stdin(832,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) (x:'a) = A x;; + -----^^^^^ + +stdin(835,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) (p:'a) (x:int) = A p;; + -----^^^^^ + +stdin(838,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) = failwith "" : Choice;; + -----^^^^^ + +stdin(844,6): error FS1209: Active pattern '|A|B|' is not a function + diff --git a/tests/fsharp/core/printing/output.47.stdout.txt b/tests/fsharp/core/printing/output.47.stdout.txt new file mode 100644 index 00000000000..4d9c46549c0 --- /dev/null +++ b/tests/fsharp/core/printing/output.47.stdout.txt @@ -0,0 +1,6294 @@ + +> val repeatId: string = "A" + +> val repeatId: string = "B" + +namespace FSI_0004 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile1 = + new: unit -> ClassInFile1 + +namespace FSI_0005 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile1 = + new: unit -> ClassInFile1 + +namespace FSI_0005 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile2 = + new: unit -> ClassInFile2 + +> val x1: seq +val x2: seq +val x3: seq +val f1: System.Windows.Forms.Form = System.Windows.Forms.Form, Text: f1 form +val fs: System.Windows.Forms.Form[] = + [|System.Windows.Forms.Form, Text: fs #0; + System.Windows.Forms.Form, Text: fs #1; + System.Windows.Forms.Form, Text: fs #2; + System.Windows.Forms.Form, Text: fs #3; + System.Windows.Forms.Form, Text: fs #4; + System.Windows.Forms.Form, Text: fs #5; + System.Windows.Forms.Form, Text: fs #6; + System.Windows.Forms.Form, Text: fs #7; + System.Windows.Forms.Form, Text: fs #8; + System.Windows.Forms.Form, Text: fs #9; + System.Windows.Forms.Form, Text: fs #10; + System.Windows.Forms.Form, Text: fs #11; + System.Windows.Forms.Form, Text: fs #12; + System.Windows.Forms.Form, Text: fs #13; + System.Windows.Forms.Form, Text: fs #14; + System.Windows.Forms.Form, Text: fs #15; + System.Windows.Forms.Form, Text: fs #16; + System.Windows.Forms.Form, Text: fs #17; + System.Windows.Forms.Form, Text: fs #18; + System.Windows.Forms.Form, Text: fs #19; + System.Windows.Forms.Form, Text: fs #20; + System.Windows.Forms.Form, Text: fs #21; + System.Windows.Forms.Form, Text: fs #22; + System.Windows.Forms.Form, Text: fs #23; + System.Windows.Forms.Form, Text: fs #24; + System.Windows.Forms.Form, Text: fs #25; + System.Windows.Forms.Form, Text: fs #26; + System.Windows.Forms.Form, Text: fs #27; + System.Windows.Forms.Form, Text: fs #28; + System.Windows.Forms.Form, Text: fs #29; + System.Windows.Forms.Form, Text: fs #30; + System.Windows.Forms.Form, Text: fs #31; + System.Windows.Forms.Form, Text: fs #32; + System.Windows.Forms.Form, Text: fs #33; + System.Windows.Forms.Form, Text: fs #34; + System.Windows.Forms.Form, Text: fs #35; + System.Windows.Forms.Form, Text: fs #36; + System.Windows.Forms.Form, Text: fs #37; + System.Windows.Forms.Form, Text: fs #38; + System.Windows.Forms.Form, Text: fs #39; + System.Windows.Forms.Form, Text: fs #40; + System.Windows.Forms.Form, Text: fs #41; + System.Windows.Forms.Form, Text: fs #42; + System.Windows.Forms.Form, Text: fs #43; + System.Windows.Forms.Form, Text: fs #44; + System.Windows.Forms.Form, Text: fs #45; + System.Windows.Forms.Form, Text: fs #46; + System.Windows.Forms.Form, Text: fs #47; + System.Windows.Forms.Form, Text: fs #48; + System.Windows.Forms.Form, Text: fs #49; + System.Windows.Forms.Form, Text: fs #50; + System.Windows.Forms.Form, Text: fs #51; + System.Windows.Forms.Form, Text: fs #52; + System.Windows.Forms.Form, Text: fs #53; + System.Windows.Forms.Form, Text: fs #54; + System.Windows.Forms.Form, Text: fs #55; + System.Windows.Forms.Form, Text: fs #56; + System.Windows.Forms.Form, Text: fs #57; + System.Windows.Forms.Form, Text: fs #58; + System.Windows.Forms.Form, Text: fs #59; + System.Windows.Forms.Form, Text: fs #60; + System.Windows.Forms.Form, Text: fs #61; + System.Windows.Forms.Form, Text: fs #62; + System.Windows.Forms.Form, Text: fs #63; + System.Windows.Forms.Form, Text: fs #64; + System.Windows.Forms.Form, Text: fs #65; + System.Windows.Forms.Form, Text: fs #66; + System.Windows.Forms.Form, Text: fs #67; + System.Windows.Forms.Form, Text: fs #68; + System.Windows.Forms.Form, Text: fs #69; + System.Windows.Forms.Form, Text: fs #70; + System.Windows.Forms.Form, Text: fs #71; + System.Windows.Forms.Form, Text: fs #72; + System.Windows.Forms.Form, Text: fs #73; + System.Windows.Forms.Form, Text: fs #74; + System.Windows.Forms.Form, Text: fs #75; + System.Windows.Forms.Form, Text: fs #76; + System.Windows.Forms.Form, Text: fs #77; + System.Windows.Forms.Form, Text: fs #78; + System.Windows.Forms.Form, Text: fs #79; + System.Windows.Forms.Form, Text: fs #80; + System.Windows.Forms.Form, Text: fs #81; + System.Windows.Forms.Form, Text: fs #82; + System.Windows.Forms.Form, Text: fs #83; + System.Windows.Forms.Form, Text: fs #84; + System.Windows.Forms.Form, Text: fs #85; + System.Windows.Forms.Form, Text: fs #86; + System.Windows.Forms.Form, Text: fs #87; + System.Windows.Forms.Form, Text: fs #88; + System.Windows.Forms.Form, Text: fs #89; + System.Windows.Forms.Form, Text: fs #90; + System.Windows.Forms.Form, Text: fs #91; + System.Windows.Forms.Form, Text: fs #92; + System.Windows.Forms.Form, Text: fs #93; + System.Windows.Forms.Form, Text: fs #94; + System.Windows.Forms.Form, Text: fs #95; + System.Windows.Forms.Form, Text: fs #96; + System.Windows.Forms.Form, Text: fs #97; + System.Windows.Forms.Form, Text: fs #98; + System.Windows.Forms.Form, Text: fs #99; ...|] +val xs: string list = + ["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; "13"; + "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; "24"; "25"; + "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"; + "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"; "48"; "49"; + "50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"; "58"; "59"; "60"; "61"; + "62"; "63"; "64"; "65"; "66"; "67"; "68"; "69"; "70"; "71"; "72"; "73"; + "74"; "75"; "76"; "77"; "78"; "79"; "80"; "81"; "82"; "83"; "84"; "85"; + "86"; "87"; "88"; "89"; "90"; "91"; "92"; "93"; "94"; "95"; "96"; "97"; + "98"; "99"; ...] +val xa: string[] = + [|"0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; "13"; + "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; "24"; "25"; + "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"; + "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"; "48"; "49"; + "50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"; "58"; "59"; "60"; "61"; + "62"; "63"; "64"; "65"; "66"; "67"; "68"; "69"; "70"; "71"; "72"; "73"; + "74"; "75"; "76"; "77"; "78"; "79"; "80"; "81"; "82"; "83"; "84"; "85"; + "86"; "87"; "88"; "89"; "90"; "91"; "92"; "93"; "94"; "95"; "96"; "97"; + "98"; "99"; ...|] +val xa2: string[,] = [["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"] + ["10"; "11"; "12"; "13"; "14"; "15"; "16"; "17"] + ["20"; "21"; "22"; "23"; "24"; "25"; "26"; "27"] + ["30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"] + ["40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"] + ["50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"] + ["60"; "61"; "62"; "63"; "64"; "65"; "66"; "67"] + ["70"; "71"; "72"; "73"; "74"; "75"; "76"; "77"]] +val sxs0: Set = set [] + +> val sxs1: Set = set ["0"] + +> val sxs2: Set = set ["0"; "1"] + +> val sxs3: Set = set ["0"; "1"; "2"] + +> val sxs4: Set = set ["0"; "1"; "2"; "3"] + +> val sxs200: Set = + set ["0"; "1"; "10"; "100"; "101"; "102"; "103"; "104"; "105"; ...] + +> val msxs0: Map = map [] + +> val msxs1: Map = map [(0, "0")] + +> val msxs2: Map = map [(0, "0"); (1, "1")] + +> val msxs3: Map = map [(0, "0"); (1, "1"); (2, "2")] + +> val msxs4: Map = map [(0, "0"); (1, "1"); (2, "2"); (3, "3")] + +> val msxs200: Map = + map + [(0, "0"); (1, "1"); (2, "2"); (3, "3"); (4, "4"); (5, "5"); (6, "6"); + (7, "7"); (8, "8"); ...] + +> module M = + val a: string = "sub-binding" + val b: + (seq * seq * seq * System.Windows.Forms.Form) option * + (string list * string list * string[,]) option = + (Some (, , , System.Windows.Forms.Form, Text: f1 form), + Some + (["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; + "13"; "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; + "24"; "25"; "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; + "35"; "36"; "37"; "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; + "46"; "47"; "48"; "49"; "50"; "51"; "52"; "53"; "54"; "55"; "56"; + "57"; "58"; "59"; "60"; "61"; "62"; "63"; "64"; "65"; "66"; "67"; + "68"; "69"; "70"; "71"; "72"; "73"; "74"; "75"; "76"; "77"; "78"; + "79"; "80"; "81"; "82"; "83"; "84"; "85"; "86"; "87"; "88"; "89"; + "90"; "91"; "92"; "93"; "94"; "95"; "96"; "97"; "98"; "99"; ...], + ["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; + "13"; "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; + "24"; "25"; "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; + "35"; "36"; "37"; "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; + "46"; "47"; "48"; "49"; "50"; "51"; "52"; "53"; "54"; "55"; "56"; + "57"; "58"; "59"; "60"; "61"; "62"; "63"; "64"; "65"; "66"; "67"; + "68"; "69"; "70"; "71"; "72"; "73"; "74"; "75"; "76"; "77"; "78"; + "79"; "80"; "81"; "82"; "83"; "84"; "85"; "86"; "87"; "88"; "89"; + "90"; "91"; "92"; "93"; "94"; "95"; "96"; "97"; "98"; "99"; ...], + [["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"] + ["10"; "11"; "12"; "13"; "14"; "15"; "16"; "17"] + ["20"; "21"; "22"; "23"; "24"; "25"; "26"; "27"] + ["30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"] + ["40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"] + ["50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"] + ["60"; "61"; "62"; "63"; "64"; "65"; "66"; "67"] + ["70"; "71"; "72"; "73"; "74"; "75"; "76"; "77"]])) +type T = + new: a: int * b: int -> T + member AMethod: x: int -> int + static member StaticMethod: x: int -> int + member AProperty: int + static member StaticProperty: int +val f_as_method: x: int -> int +val f_as_thunk: (int -> int) +val refCell: string ref = { contents = "value" } +module D1 = + val words: System.Collections.Generic.IDictionary + val words2000: System.Collections.Generic.IDictionary + +> > module D2 = + val words: IDictionary + val words2000: IDictionary +val opt1: 'a option +val opt1b: int option = None +val opt4: 'a option option option option +val opt4b: int option option option option = Some (Some (Some None)) +val opt5: int list option option option option option list = + [Some (Some (Some (Some None))); + Some (Some (Some (Some (Some [1; 2; 3; 4; 5; 6])))); + Some + (Some + (Some + (Some + (Some + [1; 2; 3; 4; 5; 6; 7; 8; 9; 0; 1; 2; 3; 4; 5; 6; 7; 8; 9; 1; + 2; 3; 4; 5; 6; 7; 8; 9; 1; 2; 3; 4; 5; 6; 7; 8; 9; 1; 2; 3; + 4; 5; 6; 7; 8; 9; 1; 2; 3; 4; 5; 6; 7; 8; 9; 0]))))] +val mkStr: n: int -> string +val strs: string[] = + [|""; "-"; "--"; "---"; "----"; "-----"; "------"; "-------"; "--------"; + "---------"; "----------"; "-----------"; "------------"; "-------------"; + "--------------"; "---------------"; "----------------"; + "-----------------"; "------------------"; "-------------------"; + "--------------------"; "---------------------"; "----------------------"; + "-----------------------"; "------------------------"; + "-------------------------"; "--------------------------"; + "---------------------------"; "----------------------------"; + "-----------------------------"; "------------------------------"; + "-------------------------------"; "--------------------------------"; + "---------------------------------"; "----------------------------------"; + "-----------------------------------"; + "------------------------------------"; + "-------------------------------------"; + "--------------------------------------"; + "---------------------------------------"; + "----------------------------------------"; + "-----------------------------------------"; + "------------------------------------------"; + "-------------------------------------------"; + "--------------------------------------------"; + "---------------------------------------------"; + "----------------------------------------------"; + "-----------------------------------------------"; + "------------------------------------------------"; + "-------------------------------------------------"; + "--------------------------------------------------"; + "---------------------------------------------------"; + "----------------------------------------------------"; + "-----------------------------------------------------"; + "------------------------------------------------------"; + "-------------------------------------------------------"; + "--------------------------------------------------------"; + "---------------------------------------------------------"; + "----------------------------------------------------------"; + "-----------------------------------------------------------"; + "------------------------------------------------------------"; + "-------------------------------------------------------------"; + "--------------------------------------------------------------"; + "---------------------------------------------------------------"; + "----------------------------------------------------------------"; + "-----------------------------------------------------------------"; + "------------------------------------------------------------------"; + "-------------------------------------------------------------------"; + "--------------------------------------------------------------------"; + "---------------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-----------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[12 chars]; + "-------------------------------------------------------------"+[13 chars]; + "-------------------------------------------------------------"+[14 chars]; + "-------------------------------------------------------------"+[15 chars]; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[18 chars]; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[20 chars]; + "-------------------------------------------------------------"+[21 chars]; + "-------------------------------------------------------------"+[22 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[24 chars]; + "-------------------------------------------------------------"+[25 chars]; + "-------------------------------------------------------------"+[26 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[28 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[31 chars]; + "-------------------------------------------------------------"+[32 chars]; + "-------------------------------------------------------------"+[33 chars]; + "-------------------------------------------------------------"+[34 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[36 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[38 chars]|] +val str7s: string[] = + [|""; "-------"; "--------------"; "---------------------"; + "----------------------------"; "-----------------------------------"; + "------------------------------------------"; + "-------------------------------------------------"; + "--------------------------------------------------------"; + "---------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[58 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[72 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[86 chars]; + "-------------------------------------------------------------"+[93 chars]; + "-------------------------------------------------------------"+[100 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[114 chars]; + "-------------------------------------------------------------"+[121 chars]; + "-------------------------------------------------------------"+[128 chars]; + "-------------------------------------------------------------"+[135 chars]; + "-------------------------------------------------------------"+[142 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[156 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[170 chars]; + "-------------------------------------------------------------"+[177 chars]; + "-------------------------------------------------------------"+[184 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[198 chars]; + "-------------------------------------------------------------"+[205 chars]; + "-------------------------------------------------------------"+[212 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[226 chars]; + "-------------------------------------------------------------"+[233 chars]; + "-------------------------------------------------------------"+[240 chars]; + "-------------------------------------------------------------"+[247 chars]; + "-------------------------------------------------------------"+[254 chars]; + "-------------------------------------------------------------"+[261 chars]; + "-------------------------------------------------------------"+[268 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[282 chars]; + "-------------------------------------------------------------"+[289 chars]; + "-------------------------------------------------------------"+[296 chars]; + "-------------------------------------------------------------"+[303 chars]; + "-------------------------------------------------------------"+[310 chars]; + "-------------------------------------------------------------"+[317 chars]; + "-------------------------------------------------------------"+[324 chars]; + "-------------------------------------------------------------"+[331 chars]; + "-------------------------------------------------------------"+[338 chars]; + "-------------------------------------------------------------"+[345 chars]; + "-------------------------------------------------------------"+[352 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[366 chars]; + "-------------------------------------------------------------"+[373 chars]; + "-------------------------------------------------------------"+[380 chars]; + "-------------------------------------------------------------"+[387 chars]; + "-------------------------------------------------------------"+[394 chars]; + "-------------------------------------------------------------"+[401 chars]; + "-------------------------------------------------------------"+[408 chars]; + "-------------------------------------------------------------"+[415 chars]; + "-------------------------------------------------------------"+[422 chars]; + "-------------------------------------------------------------"+[429 chars]; + "-------------------------------------------------------------"+[436 chars]; + "-------------------------------------------------------------"+[443 chars]; + "-------------------------------------------------------------"+[450 chars]; + "-------------------------------------------------------------"+[457 chars]; + "-------------------------------------------------------------"+[464 chars]; + "-------------------------------------------------------------"+[471 chars]; + "-------------------------------------------------------------"+[478 chars]; + "-------------------------------------------------------------"+[485 chars]; + "-------------------------------------------------------------"+[492 chars]; + "-------------------------------------------------------------"+[499 chars]; + "-------------------------------------------------------------"+[506 chars]; + "-------------------------------------------------------------"+[513 chars]; + "-------------------------------------------------------------"+[520 chars]; + "-------------------------------------------------------------"+[527 chars]; + "-------------------------------------------------------------"+[534 chars]; + "-------------------------------------------------------------"+[541 chars]; + "-------------------------------------------------------------"+[548 chars]; + "-------------------------------------------------------------"+[555 chars]; + "-------------------------------------------------------------"+[562 chars]; + "-------------------------------------------------------------"+[569 chars]; + "-------------------------------------------------------------"+[576 chars]; + "-------------------------------------------------------------"+[583 chars]; + "-------------------------------------------------------------"+[590 chars]; + "-------------------------------------------------------------"+[597 chars]; + "-------------------------------------------------------------"+[604 chars]; + "-------------------------------------------------------------"+[611 chars]; + "-------------------------------------------------------------"+[618 chars]; + "-------------------------------------------------------------"+[625 chars]; + "-------------------------------------------------------------"+[632 chars]|] +val grids: string[,] = + [[""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; + ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; + ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""] + [""; "-"; "--"; "---"; "----"; "-----"; "------"; "-------"; "--------"; + "---------"; "----------"; "-----------"; "------------"; "-------------"; + "--------------"; "---------------"; "----------------"; + "-----------------"; "------------------"; "-------------------"; + "--------------------"; "---------------------"; "----------------------"; + "-----------------------"; "------------------------"; + "-------------------------"; "--------------------------"; + "---------------------------"; "----------------------------"; + "-----------------------------"; "------------------------------"; + "-------------------------------"; "--------------------------------"; + "---------------------------------"; "----------------------------------"; + "-----------------------------------"; + "------------------------------------"; + "-------------------------------------"; + "--------------------------------------"; + "---------------------------------------"; + "----------------------------------------"; + "-----------------------------------------"; + "------------------------------------------"; + "-------------------------------------------"; + "--------------------------------------------"; + "---------------------------------------------"; + "----------------------------------------------"; + "-----------------------------------------------"; + "------------------------------------------------"; + "-------------------------------------------------"] + [""; "--"; "----"; "------"; "--------"; "----------"; "------------"; + "--------------"; "----------------"; "------------------"; + "--------------------"; "----------------------"; + "------------------------"; "--------------------------"; + "----------------------------"; "------------------------------"; + "--------------------------------"; "----------------------------------"; + "------------------------------------"; + "--------------------------------------"; + "----------------------------------------"; + "------------------------------------------"; + "--------------------------------------------"; + "----------------------------------------------"; + "------------------------------------------------"; + "--------------------------------------------------"; + "----------------------------------------------------"; + "------------------------------------------------------"; + "--------------------------------------------------------"; + "----------------------------------------------------------"; + "------------------------------------------------------------"; + "--------------------------------------------------------------"; + "----------------------------------------------------------------"; + "------------------------------------------------------------------"; + "--------------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[13 chars]; + "-------------------------------------------------------------"+[15 chars]; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[21 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[25 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[31 chars]; + "-------------------------------------------------------------"+[33 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[37 chars]] + [""; "---"; "------"; "---------"; "------------"; "---------------"; + "------------------"; "---------------------"; "------------------------"; + "---------------------------"; "------------------------------"; + "---------------------------------"; + "------------------------------------"; + "---------------------------------------"; + "------------------------------------------"; + "---------------------------------------------"; + "------------------------------------------------"; + "---------------------------------------------------"; + "------------------------------------------------------"; + "---------------------------------------------------------"; + "------------------------------------------------------------"; + "---------------------------------------------------------------"; + "------------------------------------------------------------------"; + "---------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[14 chars]; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[20 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[26 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[32 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[38 chars]; + "-------------------------------------------------------------"+[41 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[50 chars]; + "-------------------------------------------------------------"+[53 chars]; + "-------------------------------------------------------------"+[56 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[62 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[68 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[74 chars]; + "-------------------------------------------------------------"+[77 chars]; + "-------------------------------------------------------------"+[80 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[86 chars]] + [""; "----"; "--------"; "------------"; "----------------"; + "--------------------"; "------------------------"; + "----------------------------"; "--------------------------------"; + "------------------------------------"; + "----------------------------------------"; + "--------------------------------------------"; + "------------------------------------------------"; + "----------------------------------------------------"; + "--------------------------------------------------------"; + "------------------------------------------------------------"; + "----------------------------------------------------------------"; + "--------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[15 chars]; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[31 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[39 chars]; + "-------------------------------------------------------------"+[43 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[55 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[63 chars]; + "-------------------------------------------------------------"+[67 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[75 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[87 chars]; + "-------------------------------------------------------------"+[91 chars]; + "-------------------------------------------------------------"+[95 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[103 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[111 chars]; + "-------------------------------------------------------------"+[115 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[123 chars]; + "-------------------------------------------------------------"+[127 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[135 chars]] + [""; "-----"; "----------"; "---------------"; "--------------------"; + "-------------------------"; "------------------------------"; + "-----------------------------------"; + "----------------------------------------"; + "---------------------------------------------"; + "--------------------------------------------------"; + "-------------------------------------------------------"; + "------------------------------------------------------------"; + "-----------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[14 chars]; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[24 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[34 chars]; + "-------------------------------------------------------------"+[39 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[49 chars]; + "-------------------------------------------------------------"+[54 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[64 chars]; + "-------------------------------------------------------------"+[69 chars]; + "-------------------------------------------------------------"+[74 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[84 chars]; + "-------------------------------------------------------------"+[89 chars]; + "-------------------------------------------------------------"+[94 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[104 chars]; + "-------------------------------------------------------------"+[109 chars]; + "-------------------------------------------------------------"+[114 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[124 chars]; + "-------------------------------------------------------------"+[129 chars]; + "-------------------------------------------------------------"+[134 chars]; + "-------------------------------------------------------------"+[139 chars]; + "-------------------------------------------------------------"+[144 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[154 chars]; + "-------------------------------------------------------------"+[159 chars]; + "-------------------------------------------------------------"+[164 chars]; + "-------------------------------------------------------------"+[169 chars]; + "-------------------------------------------------------------"+[174 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[184 chars]] + [""; "------"; "------------"; "------------------"; + "------------------------"; "------------------------------"; + "------------------------------------"; + "------------------------------------------"; + "------------------------------------------------"; + "------------------------------------------------------"; + "------------------------------------------------------------"; + "------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[41 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[53 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[77 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[89 chars]; + "-------------------------------------------------------------"+[95 chars]; + "-------------------------------------------------------------"+[101 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[113 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[125 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[137 chars]; + "-------------------------------------------------------------"+[143 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[161 chars]; + "-------------------------------------------------------------"+[167 chars]; + "-------------------------------------------------------------"+[173 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[185 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[197 chars]; + "-------------------------------------------------------------"+[203 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[215 chars]; + "-------------------------------------------------------------"+[221 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[233 chars]] + [""; "-------"; "--------------"; "---------------------"; + "----------------------------"; "-----------------------------------"; + "------------------------------------------"; + "-------------------------------------------------"; + "--------------------------------------------------------"; + "---------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[58 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[72 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[86 chars]; + "-------------------------------------------------------------"+[93 chars]; + "-------------------------------------------------------------"+[100 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[114 chars]; + "-------------------------------------------------------------"+[121 chars]; + "-------------------------------------------------------------"+[128 chars]; + "-------------------------------------------------------------"+[135 chars]; + "-------------------------------------------------------------"+[142 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[156 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[170 chars]; + "-------------------------------------------------------------"+[177 chars]; + "-------------------------------------------------------------"+[184 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[198 chars]; + "-------------------------------------------------------------"+[205 chars]; + "-------------------------------------------------------------"+[212 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[226 chars]; + "-------------------------------------------------------------"+[233 chars]; + "-------------------------------------------------------------"+[240 chars]; + "-------------------------------------------------------------"+[247 chars]; + "-------------------------------------------------------------"+[254 chars]; + "-------------------------------------------------------------"+[261 chars]; + "-------------------------------------------------------------"+[268 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[282 chars]] + [""; "--------"; "----------------"; "------------------------"; + "--------------------------------"; + "----------------------------------------"; + "------------------------------------------------"; + "--------------------------------------------------------"; + "----------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[43 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[67 chars]; + "-------------------------------------------------------------"+[75 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[91 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[115 chars]; + "-------------------------------------------------------------"+[123 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[139 chars]; + "-------------------------------------------------------------"+[147 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[171 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[187 chars]; + "-------------------------------------------------------------"+[195 chars]; + "-------------------------------------------------------------"+[203 chars]; + "-------------------------------------------------------------"+[211 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[235 chars]; + "-------------------------------------------------------------"+[243 chars]; + "-------------------------------------------------------------"+[251 chars]; + "-------------------------------------------------------------"+[259 chars]; + "-------------------------------------------------------------"+[267 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[283 chars]; + "-------------------------------------------------------------"+[291 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[307 chars]; + "-------------------------------------------------------------"+[315 chars]; + "-------------------------------------------------------------"+[323 chars]; + "-------------------------------------------------------------"+[331 chars]] + [""; "---------"; "------------------"; "---------------------------"; + "------------------------------------"; + "---------------------------------------------"; + "------------------------------------------------------"; + "---------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[20 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[38 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[56 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[74 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[92 chars]; + "-------------------------------------------------------------"+[101 chars]; + "-------------------------------------------------------------"+[110 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[128 chars]; + "-------------------------------------------------------------"+[137 chars]; + "-------------------------------------------------------------"+[146 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[164 chars]; + "-------------------------------------------------------------"+[173 chars]; + "-------------------------------------------------------------"+[182 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[200 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[218 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[236 chars]; + "-------------------------------------------------------------"+[245 chars]; + "-------------------------------------------------------------"+[254 chars]; + "-------------------------------------------------------------"+[263 chars]; + "-------------------------------------------------------------"+[272 chars]; + "-------------------------------------------------------------"+[281 chars]; + "-------------------------------------------------------------"+[290 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[308 chars]; + "-------------------------------------------------------------"+[317 chars]; + "-------------------------------------------------------------"+[326 chars]; + "-------------------------------------------------------------"+[335 chars]; + "-------------------------------------------------------------"+[344 chars]; + "-------------------------------------------------------------"+[353 chars]; + "-------------------------------------------------------------"+[362 chars]; + "-------------------------------------------------------------"+[371 chars]; + "-------------------------------------------------------------"+[380 chars]] + [""; "----------"; "--------------------"; "------------------------------"; + "----------------------------------------"; + "--------------------------------------------------"; + "------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[39 chars]; + "-------------------------------------------------------------"+[49 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[69 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[89 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[109 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[129 chars]; + "-------------------------------------------------------------"+[139 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[159 chars]; + "-------------------------------------------------------------"+[169 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[189 chars]; + "-------------------------------------------------------------"+[199 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[229 chars]; + "-------------------------------------------------------------"+[239 chars]; + "-------------------------------------------------------------"+[249 chars]; + "-------------------------------------------------------------"+[259 chars]; + "-------------------------------------------------------------"+[269 chars]; + "-------------------------------------------------------------"+[279 chars]; + "-------------------------------------------------------------"+[289 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[309 chars]; + "-------------------------------------------------------------"+[319 chars]; + "-------------------------------------------------------------"+[329 chars]; + "-------------------------------------------------------------"+[339 chars]; + "-------------------------------------------------------------"+[349 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[369 chars]; + "-------------------------------------------------------------"+[379 chars]; + "-------------------------------------------------------------"+[389 chars]; + "-------------------------------------------------------------"+[399 chars]; + "-------------------------------------------------------------"+[409 chars]; + "-------------------------------------------------------------"+[419 chars]; + "-------------------------------------------------------------"+[429 chars]] + [""; "-----------"; "----------------------"; + "---------------------------------"; + "--------------------------------------------"; + "-------------------------------------------------------"; + "------------------------------------------------------------------"; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[38 chars]; + "-------------------------------------------------------------"+[49 chars]; + "-------------------------------------------------------------"+[60 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[82 chars]; + "-------------------------------------------------------------"+[93 chars]; + "-------------------------------------------------------------"+[104 chars]; + "-------------------------------------------------------------"+[115 chars]; + "-------------------------------------------------------------"+[126 chars]; + "-------------------------------------------------------------"+[137 chars]; + "-------------------------------------------------------------"+[148 chars]; + "-------------------------------------------------------------"+[159 chars]; + "-------------------------------------------------------------"+[170 chars]; + "-------------------------------------------------------------"+[181 chars]; + "-------------------------------------------------------------"+[192 chars]; + "-------------------------------------------------------------"+[203 chars]; + "-------------------------------------------------------------"+[214 chars]; + "-------------------------------------------------------------"+[225 chars]; + "-------------------------------------------------------------"+[236 chars]; + "-------------------------------------------------------------"+[247 chars]; + "-------------------------------------------------------------"+[258 chars]; + "-------------------------------------------------------------"+[269 chars]; + "-------------------------------------------------------------"+[280 chars]; + "-------------------------------------------------------------"+[291 chars]; + "-------------------------------------------------------------"+[302 chars]; + "-------------------------------------------------------------"+[313 chars]; + "-------------------------------------------------------------"+[324 chars]; + "-------------------------------------------------------------"+[335 chars]; + "-------------------------------------------------------------"+[346 chars]; + "-------------------------------------------------------------"+[357 chars]; + "-------------------------------------------------------------"+[368 chars]; + "-------------------------------------------------------------"+[379 chars]; + "-------------------------------------------------------------"+[390 chars]; + "-------------------------------------------------------------"+[401 chars]; + "-------------------------------------------------------------"+[412 chars]; + "-------------------------------------------------------------"+[423 chars]; + "-------------------------------------------------------------"+[434 chars]; + "-------------------------------------------------------------"+[445 chars]; + "-------------------------------------------------------------"+[456 chars]; + "-------------------------------------------------------------"+[467 chars]; + "-------------------------------------------------------------"+[478 chars]] + [""; "------------"; "------------------------"; + "------------------------------------"; + "------------------------------------------------"; + "------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[95 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[143 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[167 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[203 chars]; + "-------------------------------------------------------------"+[215 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[239 chars]; + "-------------------------------------------------------------"+[251 chars]; + "-------------------------------------------------------------"+[263 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[287 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[311 chars]; + "-------------------------------------------------------------"+[323 chars]; + "-------------------------------------------------------------"+[335 chars]; + "-------------------------------------------------------------"+[347 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[371 chars]; + "-------------------------------------------------------------"+[383 chars]; + "-------------------------------------------------------------"+[395 chars]; + "-------------------------------------------------------------"+[407 chars]; + "-------------------------------------------------------------"+[419 chars]; + "-------------------------------------------------------------"+[431 chars]; + "-------------------------------------------------------------"+[443 chars]; + "-------------------------------------------------------------"+[455 chars]; + "-------------------------------------------------------------"+[467 chars]; + "-------------------------------------------------------------"+[479 chars]; + "-------------------------------------------------------------"+[491 chars]; + "-------------------------------------------------------------"+[503 chars]; + "-------------------------------------------------------------"+[515 chars]; + "-------------------------------------------------------------"+[527 chars]] + [""; "-------------"; "--------------------------"; + "---------------------------------------"; + "----------------------------------------------------"; + "-----------------------------------------------------------------"; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[43 chars]; + "-------------------------------------------------------------"+[56 chars]; + "-------------------------------------------------------------"+[69 chars]; + "-------------------------------------------------------------"+[82 chars]; + "-------------------------------------------------------------"+[95 chars]; + "-------------------------------------------------------------"+[108 chars]; + "-------------------------------------------------------------"+[121 chars]; + "-------------------------------------------------------------"+[134 chars]; + "-------------------------------------------------------------"+[147 chars]; + "-------------------------------------------------------------"+[160 chars]; + "-------------------------------------------------------------"+[173 chars]; + "-------------------------------------------------------------"+[186 chars]; + "-------------------------------------------------------------"+[199 chars]; + "-------------------------------------------------------------"+[212 chars]; + "-------------------------------------------------------------"+[225 chars]; + "-------------------------------------------------------------"+[238 chars]; + "-------------------------------------------------------------"+[251 chars]; + "-------------------------------------------------------------"+[264 chars]; + "-------------------------------------------------------------"+[277 chars]; + "-------------------------------------------------------------"+[290 chars]; + "-------------------------------------------------------------"+[303 chars]; + "-------------------------------------------------------------"+[316 chars]; + "-------------------------------------------------------------"+[329 chars]; + "-------------------------------------------------------------"+[342 chars]; + "-------------------------------------------------------------"+[355 chars]; + "-------------------------------------------------------------"+[368 chars]; + "-------------------------------------------------------------"+[381 chars]; + "-------------------------------------------------------------"+[394 chars]; + "-------------------------------------------------------------"+[407 chars]; + "-------------------------------------------------------------"+[420 chars]; + "-------------------------------------------------------------"+[433 chars]; + "-------------------------------------------------------------"+[446 chars]; + "-------------------------------------------------------------"+[459 chars]; + "-------------------------------------------------------------"+[472 chars]; + "-------------------------------------------------------------"+[485 chars]; + "-------------------------------------------------------------"+[498 chars]; + "-------------------------------------------------------------"+[511 chars]; + "-------------------------------------------------------------"+[524 chars]; + "-------------------------------------------------------------"+[537 chars]; + "-------------------------------------------------------------"+[550 chars]; + "-------------------------------------------------------------"+[563 chars]; + "-------------------------------------------------------------"+[576 chars]] + [""; "--------------"; "----------------------------"; + "------------------------------------------"; + "--------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[93 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[121 chars]; + "-------------------------------------------------------------"+[135 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[177 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[205 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[233 chars]; + "-------------------------------------------------------------"+[247 chars]; + "-------------------------------------------------------------"+[261 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[289 chars]; + "-------------------------------------------------------------"+[303 chars]; + "-------------------------------------------------------------"+[317 chars]; + "-------------------------------------------------------------"+[331 chars]; + "-------------------------------------------------------------"+[345 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[373 chars]; + "-------------------------------------------------------------"+[387 chars]; + "-------------------------------------------------------------"+[401 chars]; + "-------------------------------------------------------------"+[415 chars]; + "-------------------------------------------------------------"+[429 chars]; + "-------------------------------------------------------------"+[443 chars]; + "-------------------------------------------------------------"+[457 chars]; + "-------------------------------------------------------------"+[471 chars]; + "-------------------------------------------------------------"+[485 chars]; + "-------------------------------------------------------------"+[499 chars]; + "-------------------------------------------------------------"+[513 chars]; + "-------------------------------------------------------------"+[527 chars]; + "-------------------------------------------------------------"+[541 chars]; + "-------------------------------------------------------------"+[555 chars]; + "-------------------------------------------------------------"+[569 chars]; + "-------------------------------------------------------------"+[583 chars]; + "-------------------------------------------------------------"+[597 chars]; + "-------------------------------------------------------------"+[611 chars]; + "-------------------------------------------------------------"+[625 chars]] + [""; "---------------"; "------------------------------"; + "---------------------------------------------"; + "------------------------------------------------------------"; + "-------------------------------------------------------------"+[14 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[74 chars]; + "-------------------------------------------------------------"+[89 chars]; + "-------------------------------------------------------------"+[104 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[134 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[164 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[194 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[224 chars]; + "-------------------------------------------------------------"+[239 chars]; + "-------------------------------------------------------------"+[254 chars]; + "-------------------------------------------------------------"+[269 chars]; + "-------------------------------------------------------------"+[284 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[314 chars]; + "-------------------------------------------------------------"+[329 chars]; + "-------------------------------------------------------------"+[344 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[374 chars]; + "-------------------------------------------------------------"+[389 chars]; + "-------------------------------------------------------------"+[404 chars]; + "-------------------------------------------------------------"+[419 chars]; + "-------------------------------------------------------------"+[434 chars]; + "-------------------------------------------------------------"+[449 chars]; + "-------------------------------------------------------------"+[464 chars]; + "-------------------------------------------------------------"+[479 chars]; + "-------------------------------------------------------------"+[494 chars]; + "-------------------------------------------------------------"+[509 chars]; + "-------------------------------------------------------------"+[524 chars]; + "-------------------------------------------------------------"+[539 chars]; + "-------------------------------------------------------------"+[554 chars]; + "-------------------------------------------------------------"+[569 chars]; + "-------------------------------------------------------------"+[584 chars]; + "-------------------------------------------------------------"+[599 chars]; + "-------------------------------------------------------------"+[614 chars]; + "-------------------------------------------------------------"+[629 chars]; + "-------------------------------------------------------------"+[644 chars]; + "-------------------------------------------------------------"+[659 chars]; + "-------------------------------------------------------------"+[674 chars]] + [""; "----------------"; "--------------------------------"; + "------------------------------------------------"; + "----------------------------------------------------------------"; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[67 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[115 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[147 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[195 chars]; + "-------------------------------------------------------------"+[211 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[243 chars]; + "-------------------------------------------------------------"+[259 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[291 chars]; + "-------------------------------------------------------------"+[307 chars]; + "-------------------------------------------------------------"+[323 chars]; + "-------------------------------------------------------------"+[339 chars]; + "-------------------------------------------------------------"+[355 chars]; + "-------------------------------------------------------------"+[371 chars]; + "-------------------------------------------------------------"+[387 chars]; + "-------------------------------------------------------------"+[403 chars]; + "-------------------------------------------------------------"+[419 chars]; + "-------------------------------------------------------------"+[435 chars]; + "-------------------------------------------------------------"+[451 chars]; + "-------------------------------------------------------------"+[467 chars]; + "-------------------------------------------------------------"+[483 chars]; + "-------------------------------------------------------------"+[499 chars]; + "-------------------------------------------------------------"+[515 chars]; + "-------------------------------------------------------------"+[531 chars]; + "-------------------------------------------------------------"+[547 chars]; + "-------------------------------------------------------------"+[563 chars]; + "-------------------------------------------------------------"+[579 chars]; + "-------------------------------------------------------------"+[595 chars]; + "-------------------------------------------------------------"+[611 chars]; + "-------------------------------------------------------------"+[627 chars]; + "-------------------------------------------------------------"+[643 chars]; + "-------------------------------------------------------------"+[659 chars]; + "-------------------------------------------------------------"+[675 chars]; + "-------------------------------------------------------------"+[691 chars]; + "-------------------------------------------------------------"+[707 chars]; + "-------------------------------------------------------------"+[723 chars]] + [""; "-----------------"; "----------------------------------"; + "---------------------------------------------------"; + "--------------------------------------------------------------------"; + "-------------------------------------------------------------"+[24 chars]; + "-------------------------------------------------------------"+[41 chars]; + "-------------------------------------------------------------"+[58 chars]; + "-------------------------------------------------------------"+[75 chars]; + "-------------------------------------------------------------"+[92 chars]; + "-------------------------------------------------------------"+[109 chars]; + "-------------------------------------------------------------"+[126 chars]; + "-------------------------------------------------------------"+[143 chars]; + "-------------------------------------------------------------"+[160 chars]; + "-------------------------------------------------------------"+[177 chars]; + "-------------------------------------------------------------"+[194 chars]; + "-------------------------------------------------------------"+[211 chars]; + "-------------------------------------------------------------"+[228 chars]; + "-------------------------------------------------------------"+[245 chars]; + "-------------------------------------------------------------"+[262 chars]; + "-------------------------------------------------------------"+[279 chars]; + "-------------------------------------------------------------"+[296 chars]; + "-------------------------------------------------------------"+[313 chars]; + "-------------------------------------------------------------"+[330 chars]; + "-------------------------------------------------------------"+[347 chars]; + "-------------------------------------------------------------"+[364 chars]; + "-------------------------------------------------------------"+[381 chars]; + "-------------------------------------------------------------"+[398 chars]; + "-------------------------------------------------------------"+[415 chars]; + "-------------------------------------------------------------"+[432 chars]; + "-------------------------------------------------------------"+[449 chars]; + "-------------------------------------------------------------"+[466 chars]; + "-------------------------------------------------------------"+[483 chars]; + "-------------------------------------------------------------"+[500 chars]; + "-------------------------------------------------------------"+[517 chars]; + "-------------------------------------------------------------"+[534 chars]; + "-------------------------------------------------------------"+[551 chars]; + "-------------------------------------------------------------"+[568 chars]; + "-------------------------------------------------------------"+[585 chars]; + "-------------------------------------------------------------"+[602 chars]; + "-------------------------------------------------------------"+[619 chars]; + "-------------------------------------------------------------"+[636 chars]; + "-------------------------------------------------------------"+[653 chars]; + "-------------------------------------------------------------"+[670 chars]; + "-------------------------------------------------------------"+[687 chars]; + "-------------------------------------------------------------"+[704 chars]; + "-------------------------------------------------------------"+[721 chars]; + "-------------------------------------------------------------"+[738 chars]; + "-------------------------------------------------------------"+[755 chars]; + "-------------------------------------------------------------"+[772 chars]] + [""; "------------------"; "------------------------------------"; + "------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[101 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[137 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[173 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[245 chars]; + "-------------------------------------------------------------"+[263 chars]; + "-------------------------------------------------------------"+[281 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[317 chars]; + "-------------------------------------------------------------"+[335 chars]; + "-------------------------------------------------------------"+[353 chars]; + "-------------------------------------------------------------"+[371 chars]; + "-------------------------------------------------------------"+[389 chars]; + "-------------------------------------------------------------"+[407 chars]; + "-------------------------------------------------------------"+[425 chars]; + "-------------------------------------------------------------"+[443 chars]; + "-------------------------------------------------------------"+[461 chars]; + "-------------------------------------------------------------"+[479 chars]; + "-------------------------------------------------------------"+[497 chars]; + "-------------------------------------------------------------"+[515 chars]; + "-------------------------------------------------------------"+[533 chars]; + "-------------------------------------------------------------"+[551 chars]; + "-------------------------------------------------------------"+[569 chars]; + "-------------------------------------------------------------"+[587 chars]; + "-------------------------------------------------------------"+[605 chars]; + "-------------------------------------------------------------"+[623 chars]; + "-------------------------------------------------------------"+[641 chars]; + "-------------------------------------------------------------"+[659 chars]; + "-------------------------------------------------------------"+[677 chars]; + "-------------------------------------------------------------"+[695 chars]; + "-------------------------------------------------------------"+[713 chars]; + "-------------------------------------------------------------"+[731 chars]; + "-------------------------------------------------------------"+[749 chars]; + "-------------------------------------------------------------"+[767 chars]; + "-------------------------------------------------------------"+[785 chars]; + "-------------------------------------------------------------"+[803 chars]; + "-------------------------------------------------------------"+[821 chars]] + [""; "-------------------"; "--------------------------------------"; + "---------------------------------------------------------"; + "-------------------------------------------------------------"+[15 chars]; + "-------------------------------------------------------------"+[34 chars]; + "-------------------------------------------------------------"+[53 chars]; + "-------------------------------------------------------------"+[72 chars]; + "-------------------------------------------------------------"+[91 chars]; + "-------------------------------------------------------------"+[110 chars]; + "-------------------------------------------------------------"+[129 chars]; + "-------------------------------------------------------------"+[148 chars]; + "-------------------------------------------------------------"+[167 chars]; + "-------------------------------------------------------------"+[186 chars]; + "-------------------------------------------------------------"+[205 chars]; + "-------------------------------------------------------------"+[224 chars]; + "-------------------------------------------------------------"+[243 chars]; + "-------------------------------------------------------------"+[262 chars]; + "-------------------------------------------------------------"+[281 chars]; + "-------------------------------------------------------------"+[300 chars]; + "-------------------------------------------------------------"+[319 chars]; + "-------------------------------------------------------------"+[338 chars]; + "-------------------------------------------------------------"+[357 chars]; + "-------------------------------------------------------------"+[376 chars]; + "-------------------------------------------------------------"+[395 chars]; + "-------------------------------------------------------------"+[414 chars]; + "-------------------------------------------------------------"+[433 chars]; + "-------------------------------------------------------------"+[452 chars]; + "-------------------------------------------------------------"+[471 chars]; + "-------------------------------------------------------------"+[490 chars]; + "-------------------------------------------------------------"+[509 chars]; + "-------------------------------------------------------------"+[528 chars]; + "-------------------------------------------------------------"+[547 chars]; + "-------------------------------------------------------------"+[566 chars]; + "-------------------------------------------------------------"+[585 chars]; + "-------------------------------------------------------------"+[604 chars]; + "-------------------------------------------------------------"+[623 chars]; + "-------------------------------------------------------------"+[642 chars]; + "-------------------------------------------------------------"+[661 chars]; + "-------------------------------------------------------------"+[680 chars]; + "-------------------------------------------------------------"+[699 chars]; + "-------------------------------------------------------------"+[718 chars]; + "-------------------------------------------------------------"+[737 chars]; + "-------------------------------------------------------------"+[756 chars]; + "-------------------------------------------------------------"+[775 chars]; + "-------------------------------------------------------------"+[794 chars]; + "-------------------------------------------------------------"+[813 chars]; + "-------------------------------------------------------------"+[832 chars]; + "-------------------------------------------------------------"+[851 chars]; + "-------------------------------------------------------------"+[870 chars]; + ...] + ...] + +> type tree = + | L + | N of tree list +val mkT: w: int -> d: int -> tree +val tree: w: int -> d: int -> tree + +> [Building 2 4...done] +val tree_2_4: tree = + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]] + +> [Building 2 6...done] +val tree_2_6: tree = + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]] + +> [Building 2 8...done] +val tree_2_8: tree = + N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]] + +> [Building 2 10...done] +val tree_2_10: tree = + N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]]; + N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N ...; ...]; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...] + +> [Building 2 12...done] +val tree_2_12: tree = + N [N [N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]]; + N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; ...]; ...]; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 2 14...done] +val tree_2_14: tree = + N [N [N [N [N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]]]; + N [N [N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N ...; ...]; ...]; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 3 8...done] +val tree_3_8: tree = + N [N [N [N [N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]]; + N [N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]]; + N [N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...] + +> [Building 4 8...done] +val tree_4_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]]; + N [N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]]; + N [N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 5 8...done] +val tree_5_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]]; + N [N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N ...; ...]; ...]; ...]; ...]; ...]; + ...]; ...] + +> [Building 6 8...done] +val tree_6_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]]; + N [N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]]; + N [N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]]; + N [N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N ...; ...]; ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 5 3...done] +val tree_5_3: tree = + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]] + +> > type X = + | Var of int + | Bop of int * X * X +val generate: x: int -> X + +> val exps: X list = + [Bop (1, Var 0, Var 0); Var 2; + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)); Var 4; + Bop (5, Var 2, Bop (1, Var 0, Var 0)); Var 6; + Bop (7, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)), Var 2); + Var 8; + Bop (9, Var 4, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0))); + Var 10; + Bop + (213, Var 106, + Bop + (71, + Bop + (35, Bop (17, Var 8, Bop (5, Var 2, Bop (1, Var 0, Var 0))), + Bop + (11, Bop (5, Var 2, Bop (1, Var 0, Var 0)), + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)))), + Bop + (23, + Bop + (11, Bop (5, Var 2, Bop (1, Var 0, Var 0)), + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0))), + Bop + (7, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)), Var 2)))); + Var 21342314; Var 3214; Bop (1231357, Var 615678, Var 410452); + Bop + (5234547, Bop (2617273, Var 1308636, Var 872424), + Bop (1744849, Var 872424, Var 581616)); + Bop + (923759825, Var 461879912, Bop (307919941, Var 153959970, Var 102639980)); + Var 2435234; + Bop + (12396777, Var 6198388, + Bop + (4132259, + Bop + (2066129, Var 1033064, + Bop + (688709, Var 344354, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502))))), + Bop + (1377419, + Bop + (688709, Var 344354, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502)))), + Bop + (459139, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502))), + Var 153046)))); + Bop + (3333333, Var 1666666, + Bop + (1111111, + Bop + (555555, Bop (277777, Var 138888, Var 92592), + Bop (185185, Var 92592, Var 61728)), Var 370370)); + Bop + (1312311237, Var 656155618, + Bop + (437437079, + Bop + (218718539, + Bop + (109359269, Var 54679634, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38))), + Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114)))), + Bop + (72906179, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38))), + Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114))), + Bop (24302059, Bop (12151029, ..., ...), ...))), ...)); ...] + +> module Exprs = + val x1: X = + Bop + (213, Var 106, + Bop + (71, + Bop + (35, Bop (17, Var 8, Bop (5, Var 2, Bop (1, Var 0, Var 0))), + Bop + (11, Bop (5, Var 2, Bop (1, Var 0, Var 0)), + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)))), + Bop + (23, + Bop + (11, Bop (5, Var 2, Bop (1, Var 0, Var 0)), + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0))), + Bop + (7, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)), + Var 2)))) + val x2: X = Var 21342314 + val x3: X = Var 3214 + val x4: X = Bop (1231357, Var 615678, Var 410452) + val x5: X = + Bop + (5234547, Bop (2617273, Var 1308636, Var 872424), + Bop (1744849, Var 872424, Var 581616)) + val x6: X = + Bop + (923759825, Var 461879912, Bop (307919941, Var 153959970, Var 102639980)) + val x7: X = Var 2435234 + val x8: X = + Bop + (12396777, Var 6198388, + Bop + (4132259, + Bop + (2066129, Var 1033064, + Bop + (688709, Var 344354, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502))))), + Bop + (1377419, + Bop + (688709, Var 344354, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502)))), + Bop + (459139, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502))), + Var 153046)))) + val x9: X = + Bop + (3333333, Var 1666666, + Bop + (1111111, + Bop + (555555, Bop (277777, Var 138888, Var 92592), + Bop (185185, Var 92592, Var 61728)), Var 370370)) + val x10: X = + Bop + (1312311237, Var 656155618, + Bop + (437437079, + Bop + (218718539, + Bop + (109359269, Var 54679634, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop + (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))), Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114)))), + Bop + (72906179, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop + (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))), Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114))), + Bop + (24302059, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop + (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))), Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114)), Var 8100686))), + Bop + (145812359, + Bop + (72906179, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop + (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + ...), ...))), + ...)))), ...), ...)), + ...))), ...))), ...), ...))) + val x11: X = + Bop + (2147483647, + Bop + (1073741823, + Bop + (536870911, + Bop + (268435455, + Bop + (134217727, + Bop + (67108863, + Bop + (33554431, + Bop + (16777215, + Bop + (8388607, + Bop + (4194303, + Bop + (2097151, + Bop + (1048575, + Bop + (524287, + Bop + (262143, + Bop + (131071, + Bop + (65535, + Bop + (32767, + Bop + (16383, + Bop + (8191, + Bop + (4095, + Bop + (2047, + Bop + (1023, + Bop + (511, + Bop + (255, + Bop + (127, + Bop + (63, + Bop + (31, + Bop + (15, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var + 2), + Bop + (5, + Var + 2, + Bop + (1, + Var + 0, + Var + 0))), + Var + 10), + Bop + (21, + Var + 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var + 2))), + Var + 42), + Bop + (85, + Var + 42, + Var + 28)), + Var + 170), + Bop + (341, + Var + 170, + Bop + (113, + Var + 56, + Bop + (37, + Var + 18, + Var + 12)))), + Var 682), + Bop + (1365, + Var 682, + Bop + (455, + Bop + (227, + Bop + (113, + Var + 56, + Bop + (37, + Var + 18, + Var + 12)), + Bop + (75, + Bop + (37, + Var + 18, + Var + 12), + Bop + (25, + Var + 12, + Var + 8))), + Bop + (151, + Bop + (75, + Bop + (37, + Var + 18, + Var + 12), + Bop + (25, + Var + 12, + Var + 8)), + Var + 50)))), + Var 2730), + Bop + (5461, Var 2730, + Var 1820)), + Var 10922), + Bop + (21845, Var 10922, + Bop + (7281, Var 3640, + Bop + (2427, + Bop + (1213, Var 606, + Var 404), + Bop + (809, Var 404, + Bop + (269, + Var 134, + Bop + (89, + Var 44, + Bop + (29, + Var + 14, + Bop + (9, + Var + 4, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))))))))))), + Var 43690), + Bop + (87381, Var 43690, + Bop + (29127, + Bop + (14563, + Bop + (7281, Var 3640, + Bop + (2427, + Bop + (1213, Var 606, + Var 404), + Bop + (809, Var 404, + Bop + (269, + Var 134, + Bop + (89, + Var 44, + Bop + (29, + Var + 14, + Bop + (9, + Var + 4, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))))))))), + Var 4854), + Bop + (9709, Var 4854, + Var 3236)))), + Var 174762), + Bop (349525, Var 174762, Var 116508)), + Var 699050), + Bop + (1398101, Var 699050, + Bop (466033, Var 233016, Var 155344))), + Var 2796202), + Bop + (5592405, Var 2796202, + Bop + (1864135, + Bop + (932067, + Bop (466033, Var 233016, Var 155344), + Bop + (310689, Var 155344, + Bop + (103563, + Bop (51781, Var 25890, Var 17260), + Bop + (34521, Var 17260, + Bop + (11507, + Bop + (5753, Var 2876, + Bop + (1917, Var 958, + Bop + (639, + Bop + (319, + Bop + (159, + Bop + (79, + Bop + (39, + Bop + (19, + Bop + (9, + Var + 4, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))), + Var 6), + Bop + (13, + Var 6, + Var 4)), + Var 26), + Bop + (53, Var 26, + Bop + (17, + Var 8, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0))))), + Var 106), + Bop + (213, Var 106, + Bop + (71, + Bop + (35, + Bop + (17, + Var 8, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0))), + Bop + (11, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0)), + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)))), + Bop + (23, + Bop + (11, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0)), + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))), + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))))), + Bop + (3835, + Bop + (1917, Var 958, + Bop + (639, + Bop + (319, + Bop + (159, + Bop + (79, + Bop + (39, + Bop + (19, + Bop + (9, + Var + 4, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))), + Var 6), + Bop + (13, + Var 6, + Var 4)), + Var 26), + Bop + (53, Var 26, + Bop + (17, + Var 8, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0))))), + Var 106), + Bop + (213, Var 106, + Bop + (71, + Bop + (35, + Bop + (17, + Var 8, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0))), + Bop + (11, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0)), + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)))), + Bop + (23, + Bop + (11, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0)), + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))), + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2)))))), + Var 1278)))))), Var 621378))), + Var 11184810), + Bop (22369621, Var 11184810, Var 7456540)), Var 44739242), + Bop + (89478485, Var 44739242, + Bop + (29826161, Var 14913080, + Bop + (9942053, Var 4971026, + Bop (3314017, Var 1657008, Var 1104672))))), + Var 178956970), + Bop + (357913941, Var 178956970, + Bop + (119304647, + Bop + (59652323, + Bop + (29826161, Var 14913080, + Bop + (9942053, Var 4971026, + Bop (3314017, Var 1657008, Var 1104672))), + Bop + (19884107, + Bop + (9942053, Var 4971026, + Bop (3314017, Var 1657008, Var 1104672)), + Bop + (6628035, Bop (3314017, Var 1657008, Var 1104672), + Bop (2209345, Var 1104672, Var 736448)))), + Bop + (39768215, + Bop + (19884107, + Bop + (9942053, Var 4971026, + Bop (3314017, Var 1657008, Var 1104672)), + Bop + (6628035, Bop (3314017, Var 1657008, Var 1104672), + Bop (2209345, Var 1104672, Var 736448))), + Bop + (13256071, + Bop + (6628035, Bop (3314017, Var 1657008, Var 1104672), + Bop (2209345, Var 1104672, Var 736448)), Var 4418690))))), + Var 715827882) + +> type C = + new: x: string -> C + override ToString: unit -> string +val c1: C = +val csA: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] +val csB: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] +val csC: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] + +> exception Abc + +> exception AbcInt of int + +> exception AbcString of string + +> exception AbcExn of exn list + +> exception AbcException of System.Exception list + +> val exA1: exn = Abc +val exA2: exn = AbcInt 2 +val exA3: exn = AbcString "3" +val exA4: exn = AbcExn [Abc; AbcInt 2; AbcString "3"] +val exA5: exn = AbcException [AbcExn [Abc; AbcInt 2; AbcString "3"]] +exception Ex0 +exception ExUnit of unit +exception ExUnits of unit * unit +exception ExUnitOption of unit option +val ex0: exn = Ex0 +val exU: exn = ExUnit () +val exUs: exn = ExUnits ((), ()) +val exUSome: exn = ExUnitOption (Some ()) +val exUNone: exn = ExUnitOption None +type 'a T4063 = | AT4063 of 'a + +> val valAT3063_12: int T4063 = AT4063 12 + +> val valAT3063_True: bool T4063 = AT4063 true + +> val valAT3063_text: string T4063 = AT4063 "text" + +> val valAT3063_null: System.Object T4063 = AT4063 null + +> type M4063<'a> = + new: x: 'a -> M4063<'a> + +> val v4063: M4063 + +> type Taaaaa<'a> = + new: unit -> Taaaaa<'a> + +> type Taaaaa2<'a> = + inherit Taaaaa<'a> + new: unit -> Taaaaa2<'a> + member M: unit -> Taaaaa2<'a> + +> type Tbbbbb<'a> = + new: x: 'a -> Tbbbbb<'a> + member M: unit -> 'a + +> type Tbbbbb2 = + inherit Tbbbbb + new: x: string -> Tbbbbb2 + +> val it: (unit -> string) = + +> module RepeatedModule = + val repeatedByteLiteral: byte[] = [|12uy; 13uy; 14uy|] + +> module RepeatedModule = + val repeatedByteLiteral: byte[] = [|12uy; 13uy; 14uy|] + +> val it: string = "Check #help" + +> + F# Interactive directives: + + #r "file.dll";; // Reference (dynamically load) the given DLL + #i "package source uri";; // Include package source uri when searching for packages + #I "path";; // Add the given search path for referenced DLLs + #load "file.fs" ...;; // Load the given file(s) as if compiled and referenced + #time ["on"|"off"];; // Toggle timing on/off + #help;; // Display help + #quit;; // Exit + + F# Interactive command line options: + + + +> val it: string = "Check #time on and then off" + +> +--> Timing now on + +> +--> Timing now off + +> val it: string = "Check #unknown command" + +> val it: string = + "Check #I with a known directory (to avoid a warning, which includes the location of this file, which is fragile...)" + +> +--> Added '/' to library include path + +> type internal T1 = + | A + | B + +> type internal T2 = + { x: int } + +> type internal T3 + +> type internal T4 = + new: unit -> T4 + +> type T1 = + internal | A + | B + +> type T2 = + internal { x: int } + +> type private T1 = + | A + | B + +> type private T2 = + { x: int } + +> type T1 = + private | A + | B + +> type T2 = + private { x: int } + +> type internal T1 = + private | A + | B + +> type internal T2 = + private { x: int } + +> type private T3 + +> type private T4 = + new: unit -> T4 + +> exception X1 of int + +> exception private X2 of int + +> exception internal X3 of int + +> type T0 = + new: unit -> T0 +type T1Post<'a> = + new: unit -> T1Post<'a> +type 'a T1Pre = + new: unit -> 'a T1Pre + +> type T0 with + member M: unit -> T0 list +type T0 with + member P: T0 * T0 +type T0 with + member E: IEvent + +> type T1Post<'a> with + member M: unit -> T1Post<'a> list +type T1Post<'a> with + member P: T1Post<'a> * T1Post<'a> +type T1Post<'a> with + member E: IEvent + +> type 'a T1Pre with + member M: unit -> 'a T1Pre list +type 'a T1Pre with + member P: 'a T1Pre * 'a T1Pre +type 'a T1Pre with + member E: IEvent + +> type T1Post<'a> with + member M: unit -> T1Post<'a> list +type T1Post<'a> with + member P: T1Post<'a> * T1Post<'a> +type T1Post<'a> with + member E: IEvent + +> type 'a T1Pre with + member M: unit -> 'a T1Pre list +type 'a T1Pre with + member P: 'a T1Pre * 'a T1Pre +type 'a T1Pre with + member E: IEvent + +> type r = + { + f0: int + f1: int + f2: int + f3: int + f4: int + f5: int + f6: int + f7: int + f8: int + f9: int + } +val r10: r = { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 } +val r10s: r[] = + [|{ f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }|] +val r10s': string * r[] = + ("one extra node", + [|{ f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }|]) + +> val x1564_A1: int = 1 + + +--> Added '\' to library include path + +val x1564_A2: int = 2 + + +--> Added '\' to library include path + +val x1564_A3: int = 3 + +> type internal Foo2 = + private new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member private Prop3: int + +> module internal InternalM = + val x: int = 1 + type Foo2 = + private new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member private Prop3: int + type private Foo3 = + new: x: int * y: int * z: int -> Foo3 + 3 overloads + member Prop1: int + member Prop2: int + member Prop3: int + type T1 = + | A + | B + type T2 = + { x: int } + type T3 + type T4 = + new: unit -> T4 + type T5 = + | A + | B + type T6 = + { x: int } + type private T7 = + | A + | B + type private T8 = + { x: int } + type T9 = + private | A + | B + type T10 = + private { x: int } + type T11 = + private | A + | B + type T12 = + private { x: int } + type private T13 + type private T14 = + new: unit -> T14 +module internal PrivateM = + val private x: int = 1 + type private Foo2 = + new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member Prop3: int + type T1 = + | A + | B + type T2 = + { x: int } + type T3 + type T4 = + new: unit -> T4 + type T5 = + | A + | B + type T6 = + { x: int } + type private T7 = + | A + | B + type private T8 = + { x: int } + type T9 = + private | A + | B + type T10 = + private { x: int } + type T11 = + private | A + | B + type T12 = + private { x: int } + type private T13 + type private T14 = + new: unit -> T14 + +> val it: seq = + seq + [(43, "10/28/2008", 1); (46, "11/18/2008", 1); (56, "1/27/2009", 2); + (58, "2/10/2009", 1)] + +> module Test4343a = + val mk: i: int -> string + val x100: string = + "0123456789012345678901234567890123456789012345678901234567890"+[39 chars] + val x90: string = + "0123456789012345678901234567890123456789012345678901234567890"+[29 chars] + val x80: string = + "0123456789012345678901234567890123456789012345678901234567890"+[19 chars] + val x75: string = + "0123456789012345678901234567890123456789012345678901234567890"+[14 chars] + val x74: string = + "0123456789012345678901234567890123456789012345678901234567890"+[13 chars] + val x73: string = + "0123456789012345678901234567890123456789012345678901234567890"+[12 chars] + val x72: string = + "012345678901234567890123456789012345678901234567890123456789012345678901" + val x71: string = + "01234567890123456789012345678901234567890123456789012345678901234567890" + val x70: string = + "0123456789012345678901234567890123456789012345678901234567890123456789" +module Test4343b = + val fA: x: int -> int + val fB: x: 'a -> y: 'a -> 'a list + val gA: (int -> int) + val gB: ('a -> 'a -> 'a list) + val gAB: (int -> int) * ('a -> 'a -> 'a list) + val hB: ('a -> 'a -> 'a list) + val hA: (int -> int) +module Test4343c = + val typename<'a> : string + val typename2<'a> : string * string +module Test4343d = + val xList: int list = [1; 2; 3] + val xArray: int[] = [|1; 2; 3|] + val xString: string = "abcdef" + val xOption: int option = Some 12 + val xArray2: (int * int)[,] = [[(0, 0); (0, 1)] + [(1, 0); (1, 1)]] + val xSeq: seq +module Test4343e = + type C = + new: x: int -> C + val cA: C + val cB: C + val cAB: C * C * C list = + (FSI_0090+Test4343e+C, FSI_0090+Test4343e+C, + [FSI_0090+Test4343e+C; FSI_0090+Test4343e+C]) + type D = + new: x: int -> D + override ToString: unit -> string + val dA: D = D(1) + val dB: D = D(2) + val dAB: D * D * D list = (D(1), D(2), [D(1); D(2)]) + module Generic = + type CGeneric<'a> = + new: x: 'a -> CGeneric<'a> + val cA: C + val cB: C + val cAB: C * C * C list = + (FSI_0090+Test4343e+C, FSI_0090+Test4343e+C, + [FSI_0090+Test4343e+C; FSI_0090+Test4343e+C]) + type D<'a> = + new: x: 'a -> D<'a> + override ToString: unit -> string + val dA: D = D(1) + val dB: D = D(2) + val dAB: D * D * D list = (D(1), D(2), [D(1); D(2)]) + val dC: D = D(True) + val boxed_dABC: obj list = [D(1); D(2); D(True)] +type F1 = + inherit System.Windows.Forms.Form + interface System.IDisposable + val x: F1 + val x2: F1 + member B: unit -> int + member D: x: int -> int + 2 overloads + abstract MMM: bool -> bool + override ToString: unit -> string + static member A: unit -> int + static member C: unit -> int + abstract AAA: int + abstract BBB: bool with set + member D2: int + member E: int + abstract ZZZ: int + static val mutable private sx: F1 + static val mutable private sx2: F1 +[] +type IP = + new: x: int * y: int -> IP + static val mutable private AA: IP +module Regression4643 = + [] + type RIP = + new: x: int -> RIP + static val mutable private y: RIP + [] + type arg_unused_is_RIP = + new: x: RIP -> arg_unused_is_RIP + [] + type arg_used_is_RIP = + new: x: RIP -> arg_used_is_RIP + member X: RIP + [] + type field_is_RIP = + val x: RIP +type Either<'a,'b> = + | This of 'a + | That of 'b +val catch: f: (unit -> 'a) -> Either<'a,(string * string)> +val seqFindIndexFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +val seqFindFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +val seqPickFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +module Regression5218 = + val t1: int = 1 + val t2: int * int = (1, 2) + val t3: int * int * int = (1, 2, 3) + val t4: int * int * int * int = (1, 2, 3, 4) + val t5: int * int * int * int * int = (1, 2, 3, 4, 5) + val t6: int * int * int * int * int * int = (1, 2, 3, 4, 5, 6) + val t7: int * int * int * int * int * int * int = (1, 2, 3, 4, 5, 6, 7) + val t8: int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8) + val t9: int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9) + val t10: int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) + val t11: int * int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11) + val t12: + int * int * int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12) + val t13: + int * int * int * int * int * int * int * int * int * int * int * int * + int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13) + val t14: + int * int * int * int * int * int * int * int * int * int * int * int * + int * int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14) + val t15: + int * int * int * int * int * int * int * int * int * int * int * int * + int * int * int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15) + +> module Regression3739 = + type IB = + abstract AbstractMember: int -> int + type C<'a when 'a :> IB> = + new: unit -> C<'a> + static member StaticMember: x: 'a -> int + +> module Regression3739 = + type IB = + abstract AbstractMember: int -> int + type C<'a when 'a :> IB> = + new: unit -> C<'a> + static member StaticMember: x: 'a -> int + +> module Regression3740 = + type Writer<'a> = + abstract get_path: unit -> string + type MyClass = + interface Writer + val path: string + +> type Regression4319_T2 = + static member (+-+-+) : x: 'a * y: 'b -> string + +> type Regression4319_T0 = + static member (+-+-+) : string + +> type Regression4319_T1 = + static member (+-+-+) : x: 'a -> string + +> type Regression4319_T1b = + static member (+-+-+) : x: 'a -> string + +> type Regression4319_T1c = + static member (+-+-+) : x: ('a * 'b) -> string + +> type Regression4319_T1d = + static member (+-+-+) : x: (int * int) -> string + +> type Regression4319_T3 = + static member (+-+-+) : x: 'a * y: 'b * z: 'c -> string + +> type Regression4319_U1 = + static member (+-+-+) : x: 'a -> moreArgs: 'b -> string + +> type Regression4319_U1b = + static member (+-+-+) : x: 'a -> moreArgs: 'b -> string + +> type Regression4319_U2 = + static member (+-+-+) : x: 'a * y: 'b -> moreArgs: 'c -> string + +> type Regression4319_U3 = + static member (+-+-+) : x: 'a * y: 'b * z: 'c -> moreArgs: 'd -> string + +> type Regression4319_check = + static member (&) : string + static member (&^) : string + static member (@) : string + static member (!=) : string + static member (:=) : string + static member (^) : string + static member (/) : string + static member ($) : string + static member (...@) : string + static member (...!=) : string + static member (.../) : string + static member (...=) : string + static member (...>) : string + static member (...^) : string + static member (...<) : string + static member ( ...* ) : string + static member (...%) : string + static member (=) : string + static member ( ** ) : string + static member (>) : string + static member (<) : string + static member (%) : string + static member ( * ) : string + static member (-) : string + +> Expect ABC = ABC +type Regression4469 = + new: unit -> Regression4469 + member ToString: unit -> string +val r4469: Regression4469 = FSI_0106+Regression4469 +val it: unit = () + +> Expect ABC = ABC +val it: unit = () + +> module Regression1019_short = + val double_nan: float = nan + val double_infinity: float = infinity + val single_nan: float32 = nanf + val single_infinity: float32 = infinityf +module Regression1019_long = + val double_nan: float = nan + val double_infinity: float = infinity + val single_nan: float32 = nanf + val single_infinity: float32 = infinityf + +> val it: int ref = { contents = 1 } + +> val x: int ref = { contents = 1 } +val f: (unit -> int) + +> val it: int = 1 + +> val it: unit = () + +> val it: int = 3 + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: 'a list + +> val it: 'a list list + +> val it: 'a option + +> val it: 'a list * 'b list + +> val it: x: 'a -> 'a + +> val fff: x: 'a -> 'a + +> val it: ('a -> 'a) + +> val note_ExpectDupMethod: string = + "Regression4927: Expect error due to duplicate methods in the "+[20 chars] + +> > val note_ExpectDupProperty: string = + "Regression4927: Expect error due to duplicate properties in t"+[23 chars] + +> > > val it: string = "NOTE: Expect IAPrivate less accessible IBPublic" + +> > val it: string = "NOTE: Expect IAPrivate less accessible IBInternal" + +> > module Regression5265_PriPri = + type private IAPrivate = + abstract P: int + type private IBPrivate = + inherit IAPrivate + abstract Q: int + +> val it: string = "NOTE: Expect IAInternal less accessible IBPublic" + +> > module Regression5265_IntInt = + type internal IAInternal = + abstract P: int + type internal IBInternal = + inherit IAInternal + abstract Q: int + +> module Regression5265_IntPri = + type internal IAInternal = + abstract P: int + type private IBPrivate = + inherit IAInternal + abstract Q: int + +> module Regression5265_PubPub = + type IAPublic = + abstract P: int + type IBPublic = + inherit IAPublic + abstract Q: int + +> module Regression5265_PubInt = + type IAPublic = + abstract P: int + type internal IBInternal = + inherit IAPublic + abstract Q: int + +> module Regression5265_PubPri = + type IAPublic = + abstract P: int + type private IBPrivate = + inherit IAPublic + abstract Q: int + +> val it: string = + "Regression4232: Expect an error about duplicate virtual methods from parent type" + +> > val it: string = + "** Expect AnAxHostSubClass to be accepted. AxHost has a newslot virtual RightToLeft property outscope RightToLeft on Control" + +> type AnAxHostSubClass = + inherit System.Windows.Forms.AxHost + new: x: string -> AnAxHostSubClass + +> val it: string = + "** Expect error because the active pattern result contains free type variables" + +> > val it: string = + "** Expect error because the active pattern result contains free type variables (match value generic)" + +> > val it: string = + "** Expect error because the active pattern result contains free type variables (when active pattern also has parameters)" + +> > val it: string = + "** Expect OK, since error message says constraint should work!" + +> val (|A|B|) : x: int -> Choice + +> val it: string = "** Expect error since active pattern is not a function!" + +> > val it: string = + "** Expect OK since active pattern result is not too generic, typars depend on match val" + +> val (|A|B|) : p: bool -> 'a * 'b -> Choice<'a,'b> + +> val it: string = + "** Expect OK since active pattern result is not too generic, typars depend on parameters" + +> val (|A|B|) : aval: 'a -> bval: 'b -> x: bool -> Choice<'a,'b> + +> val it: string = + "** Expect OK since active pattern result is generic, but it typar from closure, so OK" + +> val outer: x: 'a -> (int -> 'a option) + +> val it: string = + "** Expect OK, BUG 472278: revert unintended breaking change to Active Patterns in F# 3.0" + +> val (|Check1|) : a: int -> int * 'a option + +> > module ReflectionEmit = + type IA = + abstract M: #IB -> int + and IB = + abstract M: #IA -> int + type IA2<'a when 'a :> IB2<'a> and 'a :> IA2<'a>> = + abstract M: int + and IB2<'b when 'b :> IA2<'b> and 'b :> IB2<'b>> = + abstract M: int + +> val it: string = + "Regression_139182: Expect the follow code to be accepted without error" + +> [] +type S = + member TheMethod: unit -> int64 +val theMethod: s: S -> int64 +type T = + new: unit -> T + member Prop5: int64 + static member Prop1: int64 + static member Prop2: int64 + static member Prop3: int64 + static member Prop4: string + +> val it: System.Threading.ThreadLocal list = [0 {IsValueCreated = false; + Values = ?;}] + +> type MyDU = + | Case1 of Val1: int * Val2: string + | Case2 of string * V2: bool * float + | Case3 of int + | Case4 of Item1: bool + | Case5 of bool * string + | Case6 of Val1: int * bool * string + | Case7 of ``Big Name`` : int +val namedFieldVar1: MyDU = Case1 (5, "") +val namedFieldVar2: MyDU = Case7 25 + +> exception MyNamedException1 of Val1: int * Val2: string +exception MyNamedException2 of string * V2: bool * float +exception MyNamedException3 of Data: int +exception MyNamedException4 of bool +exception MyNamedException5 of int * string +exception MyNamedException6 of Val1: int * bool * string * Data8: float +exception MyNamedException7 of ``Big Named Field`` : int +val namedEx1: exn = MyNamedException1 (5, "") +val namedEx2: exn = MyNamedException7 25 + +> type optionRecord = + { x: int option } +val x: optionRecord = { x = None } + +> type optionRecord = + { x: obj } +val x: optionRecord = { x = null } + +> type RecordWithMembers = + { x: obj } + member Method: unit -> int + member Property: int + +> type UnionWithMembers = + | Case1 + | Case2 of int + member Method: unit -> int + member Property: int + +> type OneFieldRecordNoXmlDoc = + { OneField: obj } + +> type OneFieldRecordXmlDoc = + { + OneField: obj + } + +> type TwoFieldRecordNoXmlDoc = + { + TwoFields1: obj + TwoFields2: obj + } + +> type TwoFieldRecordXmlDoc = + { + TwoFields1: obj + TwoFields2: obj + } + +> type Int32 with + member ExtrinsicExtensionProperty: int +type Int32 with + member ExtrinsicExtensionMethod: unit -> int + +> val ``value with spaces in name`` : bool = true + +> val functionWhichTakesLongNameMixedParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int * + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int + -> ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int * + dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesLongNameTupledParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int * + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int * + ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int * + ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesLongNameCurriedParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int + -> bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int + -> cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int + -> dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesMixedLengthCurriedParametersA: + a: 'a -> b: 'b -> c: 'c -> ddddddddddddddddddddddddddddddddddddddddddddd: 'd + -> int + +> val functionWhichTakesMixedLengthCurriedParametersB: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: 'a -> b: 'b -> c: 'c -> d: 'd -> int + +> val f: ``parameter with spaces in name`` : int -> int + +> val functionWhichTakesAParameterPeeciselyPlusButNotOpAddition: + ``+`` : (int -> int -> int) -> int + +> val functionWhichTakesAParameterOpAddition: (+) : (int -> int -> int) -> int + +> val functionWhichTakesAParameterCalled_land: + ``land`` : (int -> int -> int) -> int + +> type RecordWithStrangeNames = + { + ``funky name`` : obj + op_Addition: obj + ``+`` : obj + ``land`` : obj + ``base`` : obj + } + +> type UnionWithSpacesInNamesOfCases = + | ``Funky name`` + | ``Funky name 2`` + +> type ``Type with spaces in name`` = + | A + | B + +> type op_Addition = + | A + | B + +> type ``land`` = + | A + | B + +> module ``Module with spaces in name`` = + val x: int = 1 + +> module op_Addition = + val x: int = 1 + +> module ``land`` = + val x: int = 1 + +> val ``+`` : x: 'a -> y: 'b -> int + +> val (+) : x: int -> y: int -> int + +> val ``base`` : int = 2 + +> val (mod) : int = 2 + +> val ``or`` : int = 2 + +> val ``land`` : int = 2 + +> val ``.ctor`` : int = 2 + +> val ``.cctor`` : int = 2 + +> [] +val SomeLiteralWithASomewhatLongName: string + = "SomeVeryLongLiteralValueWithLotsOfCharacters" +[] +val SomeLiteralWithASomewhatLongName2: string + = + "SomeVeryLongLiteralValueWithLotsOfCharactersSomeVeryLongLiteralValueWithLotsOfCharactersSomeVeryLongLiteralValueWithLotsOfCharacters" +[] +val ShortName: string = "hi" + +> val it: System.DayOfWeek = Tuesday + +> val internal f: unit -> int + +> val it: int = 1 + +> type internal CInternal = + new: unit -> CInternal + +> val it: unit = () + +> type internal CPublic = + new: unit -> CPublic + member MInternal: unit -> unit + +> val it: unit = () + +> type internal CPublic2 = + new: unit -> CPublic2 + member MPublic: unit -> int + +> val it: int = 1 + +> val inst1: TestLoadFile.ClassInFile1 + +> val inst2: TestLoadFile2.ClassInFile2 + +> > > diff --git a/tests/fsharp/core/printing/output.legacyemitoff.stderr.txt b/tests/fsharp/core/printing/output.legacyemitoff.stderr.txt new file mode 100644 index 00000000000..68785a152df --- /dev/null +++ b/tests/fsharp/core/printing/output.legacyemitoff.stderr.txt @@ -0,0 +1,366 @@ + + #blaaaaaa // blaaaaaa is not a known command;; + ^^^^^^^^^ + +stdin(219,1): warning FS3353: Invalid directive '#blaaaaaa ' + + + type Regression4319_T0 = static member (+-+-+) = "0 arguments";; + -----------------------------------------^^^^^ + +stdin(571,42): warning FS1172: Infix operator member '+-+-+' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1 = static member (+-+-+) x = "1 argument";; + -----------------------------------------^^^^^ + +stdin(572,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1b = static member (+-+-+) (x) = "1 (argument) [brackets make no diff]";; + -----------------------------------------^^^^^ + +stdin(573,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1c = static member (+-+-+) x = let a,b = x in "1 argument, tuple typed from RHS. Still not OK";; + -----------------------------------------^^^^^ + +stdin(574,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1d = static member (+-+-+) (x:int*int) = "1 argument, tuple typed from LHS. Still not OK";; + -----------------------------------------^^^^^ + +stdin(575,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T3 = static member (+-+-+) (x,y,z) = "3 arguments";; + -----------------------------------------^^^^^ + +stdin(577,42): warning FS1173: Infix operator member '+-+-+' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1 = static member (+-+-+) x moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(578,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1 = static member (+-+-+) x moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(578,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1b = static member (+-+-+) (x) moreArgs = "1 (argument) [brackets make no diff] and further args";; + -----------------------------------------^^^^^ + +stdin(579,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1b = static member (+-+-+) (x) moreArgs = "1 (argument) [brackets make no diff] and further args";; + -----------------------------------------^^^^^ + +stdin(579,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U2 = static member (+-+-+) (x,y) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(580,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U3 = static member (+-+-+) (x,y,z) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(581,42): warning FS1173: Infix operator member '+-+-+' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U3 = static member (+-+-+) (x,y,z) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(581,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (:=) = "COLON_EQUALS" + -------------------^^ + +stdin(584,20): warning FS1172: Infix operator member ':=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (:=) = "COLON_EQUALS" + -------------------^^ + +stdin(584,20): warning FS0086: The name '(:=)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (&) = "AMP" + -------------------^ + +stdin(588,20): warning FS1172: Infix operator member '&' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (&) = "AMP" + -------------------^ + +stdin(588,20): warning FS0086: The name '(&)' should not be used as a member name. If defining a static member for use from other CLI languages then use the name 'op_Amp' instead. + + + static member (&^) = "AMP_AMP" + -------------------^^ + +stdin(589,20): warning FS1172: Infix operator member '&^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (=) = "EQUALS" + -------------------^ + +stdin(590,20): warning FS1172: Infix operator member '=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (=) = "EQUALS" + -------------------^ + +stdin(590,20): warning FS0086: The name '(=)' should not be used as a member name. To define equality semantics for a type, override the 'Object.Equals' member. If defining a static member for use from other CLI languages then use the name 'op_Equality' instead. + + + static member (!=) = "INFIX_COMPARE_OP" + -------------------^^ + +stdin(592,20): warning FS1172: Infix operator member '!=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...=) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(596,20): warning FS1172: Infix operator member '...=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...!=) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^^ + +stdin(597,20): warning FS1172: Infix operator member '...!=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...<) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(598,20): warning FS1172: Infix operator member '...<' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...>) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(599,20): warning FS1172: Infix operator member '...>' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ($) = "DOLLAR" + -------------------^ + +stdin(601,20): warning FS1172: Infix operator member '$' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (<) = "LESS" + -------------------^ + +stdin(602,20): warning FS1172: Infix operator member '<' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (<) = "LESS" + -------------------^ + +stdin(602,20): warning FS0086: The name '(<)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name 'op_LessThan' instead. + + + static member (>) = "GREATER" + -------------------^ + +stdin(603,20): warning FS1172: Infix operator member '>' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (>) = "GREATER" + -------------------^ + +stdin(603,20): warning FS0086: The name '(>)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name 'op_GreaterThan' instead. + + + static member (@) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(604,20): warning FS1172: Infix operator member '@' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (@) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(604,20): warning FS0086: The name '(@)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (^) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(605,20): warning FS1172: Infix operator member '^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (^) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(605,20): warning FS0086: The name '(^)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (...@) = "INFIX_AT_HAT_OP" // with $. prefix + -------------------^^^^ + +stdin(606,20): warning FS1172: Infix operator member '...@' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...^) = "INFIX_AT_HAT_OP" // with $. prefix + -------------------^^^^ + +stdin(607,20): warning FS1172: Infix operator member '...^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (%) = "PERCENT_OP" + -------------------^ + +stdin(608,20): warning FS1172: Infix operator member '%' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (-) = "MINUS" + -------------------^ + +stdin(610,20): warning FS1172: Infix operator member '-' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( * ) = "STAR" + --------------------^ + +stdin(611,21): warning FS1172: Infix operator member '*' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (/) = "INFIX_STAR_DIV_MOD_OP" + -------------------^ + +stdin(613,20): warning FS1172: Infix operator member '/' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ...* ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(615,21): warning FS1172: Infix operator member '...*' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( .../ ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(616,21): warning FS1172: Infix operator member '.../' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ...% ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(617,21): warning FS1172: Infix operator member '...%' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ** ) = "INFIX_STAR_STAR_OP" + --------------------^^ + +stdin(618,21): warning FS1172: Infix operator member '**' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + member this.ToString() = "ABC" + ----------------^^^^^^^^ + +stdin(623,17): warning FS0864: This new member hides the abstract member 'System.Object.ToString() : string'. Rename the member or use 'override' instead. + + + let x,f = it, (fun () -> !it);; // this will read from the static storage for 'it' + -------------------------^ + +stdin(643,26): info FS3370: The use of '!' from the F# library is deprecated. See https://aka.ms/fsharp-refcell-ops. For example, please change '!cell' to 'cell.Value'. + + + x := 3;; + --^^ + +stdin(645,3): info FS3370: The use of ':=' from the F# library is deprecated. See https://aka.ms/fsharp-refcell-ops. For example, please change 'cell := expr' to 'cell.Value <- expr'. + + + member this.M() = "string" + ----------------^ + +stdin(764,17): error FS0438: Duplicate method. The method 'M' has the same name and signature as another method in type 'ExpectDupMethod'. + + + member this.P = "string" + ----------------^ + +stdin(771,17): error FS0438: Duplicate method. The method 'get_P' has the same name and signature as another method in type 'ExpectDupProperty'. + + + type public IBPublic = interface inherit IAPrivate abstract Q : int end + ------------------^^^^^^^^ + +stdin(778,19): error FS0410: The type 'IAPrivate' is less accessible than the value, member or type 'IBPublic' it is used in. + + + type internal IBInternal = interface inherit IAPrivate abstract Q : int end + ------------------^^^^^^^^^^ + +stdin(783,19): error FS0410: The type 'IAPrivate' is less accessible than the value, member or type 'IBInternal' it is used in. + + + type public IBPublic = interface inherit IAInternal abstract Q : int end + ------------------^^^^^^^^ + +stdin(792,19): error FS0410: The type 'IAInternal' is less accessible than the value, member or type 'IBPublic' it is used in. + + + override x.M(a:string) = 1 + -------------------^ + +stdin(824,20): error FS0361: The override 'M: string -> int' implements more than one abstract slot, e.g. 'abstract Regression4232.D.M: 'U -> int' and 'abstract Regression4232.D.M: 'T -> int' + + + let (|A|B|) (x:int) = A x;; + -----^^^^^ + +stdin(832,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) (x:'a) = A x;; + -----^^^^^ + +stdin(835,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) (p:'a) (x:int) = A p;; + -----^^^^^ + +stdin(838,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) = failwith "" : Choice;; + -----^^^^^ + +stdin(844,6): error FS1209: Active pattern '|A|B|' is not a function + + + let internal f() = 1;; f();; // should give a warning in multi-assembly interactive emit + -----------------------^^^ + +stdin(1089,24): warning FS2303: Accessing the internal type, method or field 'f' from a previous evaluation in F# Interactive is deprecated and may cause subsequent access errors. To enable the legacy generation of a single dynamic assembly that can access internals, use the '--multiemit-' option. + + + CPublic().MInternal();; // should give a warning in multi-assembly interactive emit + ^^^^^^^^^^^^^^^^^^^^^ + +stdin(1099,1): warning FS2303: Accessing the internal type, method or field 'MInternal' from a previous evaluation in F# Interactive is deprecated and may cause subsequent access errors. To enable the legacy generation of a single dynamic assembly that can access internals, use the '--multiemit-' option. + + + CPublic2().MPublic();; // should give a warning in multi-assembly interactive emit + ^^^^^^^^^^^^^^^^^^^^ + +stdin(1105,1): warning FS2303: Accessing the internal type, method or field 'MPublic' from a previous evaluation in F# Interactive is deprecated and may cause subsequent access errors. To enable the legacy generation of a single dynamic assembly that can access internals, use the '--multiemit-' option. + diff --git a/tests/fsharp/core/printing/output.legacyemitoff.stdout.txt b/tests/fsharp/core/printing/output.legacyemitoff.stdout.txt new file mode 100644 index 00000000000..77a168f1190 --- /dev/null +++ b/tests/fsharp/core/printing/output.legacyemitoff.stdout.txt @@ -0,0 +1,6296 @@ + +> val repeatId: string = "A" + +> val repeatId: string = "B" + +namespace FSI_0004 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile1 = + new: unit -> ClassInFile1 + +namespace FSI_0005 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile1 = + new: unit -> ClassInFile1 + +namespace FSI_0005 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile2 = + new: unit -> ClassInFile2 + +> val x1: seq +val x2: seq +val x3: seq +val f1: System.Windows.Forms.Form = System.Windows.Forms.Form, Text: f1 form +val fs: System.Windows.Forms.Form[] = + [|System.Windows.Forms.Form, Text: fs #0; + System.Windows.Forms.Form, Text: fs #1; + System.Windows.Forms.Form, Text: fs #2; + System.Windows.Forms.Form, Text: fs #3; + System.Windows.Forms.Form, Text: fs #4; + System.Windows.Forms.Form, Text: fs #5; + System.Windows.Forms.Form, Text: fs #6; + System.Windows.Forms.Form, Text: fs #7; + System.Windows.Forms.Form, Text: fs #8; + System.Windows.Forms.Form, Text: fs #9; + System.Windows.Forms.Form, Text: fs #10; + System.Windows.Forms.Form, Text: fs #11; + System.Windows.Forms.Form, Text: fs #12; + System.Windows.Forms.Form, Text: fs #13; + System.Windows.Forms.Form, Text: fs #14; + System.Windows.Forms.Form, Text: fs #15; + System.Windows.Forms.Form, Text: fs #16; + System.Windows.Forms.Form, Text: fs #17; + System.Windows.Forms.Form, Text: fs #18; + System.Windows.Forms.Form, Text: fs #19; + System.Windows.Forms.Form, Text: fs #20; + System.Windows.Forms.Form, Text: fs #21; + System.Windows.Forms.Form, Text: fs #22; + System.Windows.Forms.Form, Text: fs #23; + System.Windows.Forms.Form, Text: fs #24; + System.Windows.Forms.Form, Text: fs #25; + System.Windows.Forms.Form, Text: fs #26; + System.Windows.Forms.Form, Text: fs #27; + System.Windows.Forms.Form, Text: fs #28; + System.Windows.Forms.Form, Text: fs #29; + System.Windows.Forms.Form, Text: fs #30; + System.Windows.Forms.Form, Text: fs #31; + System.Windows.Forms.Form, Text: fs #32; + System.Windows.Forms.Form, Text: fs #33; + System.Windows.Forms.Form, Text: fs #34; + System.Windows.Forms.Form, Text: fs #35; + System.Windows.Forms.Form, Text: fs #36; + System.Windows.Forms.Form, Text: fs #37; + System.Windows.Forms.Form, Text: fs #38; + System.Windows.Forms.Form, Text: fs #39; + System.Windows.Forms.Form, Text: fs #40; + System.Windows.Forms.Form, Text: fs #41; + System.Windows.Forms.Form, Text: fs #42; + System.Windows.Forms.Form, Text: fs #43; + System.Windows.Forms.Form, Text: fs #44; + System.Windows.Forms.Form, Text: fs #45; + System.Windows.Forms.Form, Text: fs #46; + System.Windows.Forms.Form, Text: fs #47; + System.Windows.Forms.Form, Text: fs #48; + System.Windows.Forms.Form, Text: fs #49; + System.Windows.Forms.Form, Text: fs #50; + System.Windows.Forms.Form, Text: fs #51; + System.Windows.Forms.Form, Text: fs #52; + System.Windows.Forms.Form, Text: fs #53; + System.Windows.Forms.Form, Text: fs #54; + System.Windows.Forms.Form, Text: fs #55; + System.Windows.Forms.Form, Text: fs #56; + System.Windows.Forms.Form, Text: fs #57; + System.Windows.Forms.Form, Text: fs #58; + System.Windows.Forms.Form, Text: fs #59; + System.Windows.Forms.Form, Text: fs #60; + System.Windows.Forms.Form, Text: fs #61; + System.Windows.Forms.Form, Text: fs #62; + System.Windows.Forms.Form, Text: fs #63; + System.Windows.Forms.Form, Text: fs #64; + System.Windows.Forms.Form, Text: fs #65; + System.Windows.Forms.Form, Text: fs #66; + System.Windows.Forms.Form, Text: fs #67; + System.Windows.Forms.Form, Text: fs #68; + System.Windows.Forms.Form, Text: fs #69; + System.Windows.Forms.Form, Text: fs #70; + System.Windows.Forms.Form, Text: fs #71; + System.Windows.Forms.Form, Text: fs #72; + System.Windows.Forms.Form, Text: fs #73; + System.Windows.Forms.Form, Text: fs #74; + System.Windows.Forms.Form, Text: fs #75; + System.Windows.Forms.Form, Text: fs #76; + System.Windows.Forms.Form, Text: fs #77; + System.Windows.Forms.Form, Text: fs #78; + System.Windows.Forms.Form, Text: fs #79; + System.Windows.Forms.Form, Text: fs #80; + System.Windows.Forms.Form, Text: fs #81; + System.Windows.Forms.Form, Text: fs #82; + System.Windows.Forms.Form, Text: fs #83; + System.Windows.Forms.Form, Text: fs #84; + System.Windows.Forms.Form, Text: fs #85; + System.Windows.Forms.Form, Text: fs #86; + System.Windows.Forms.Form, Text: fs #87; + System.Windows.Forms.Form, Text: fs #88; + System.Windows.Forms.Form, Text: fs #89; + System.Windows.Forms.Form, Text: fs #90; + System.Windows.Forms.Form, Text: fs #91; + System.Windows.Forms.Form, Text: fs #92; + System.Windows.Forms.Form, Text: fs #93; + System.Windows.Forms.Form, Text: fs #94; + System.Windows.Forms.Form, Text: fs #95; + System.Windows.Forms.Form, Text: fs #96; + System.Windows.Forms.Form, Text: fs #97; + System.Windows.Forms.Form, Text: fs #98; + System.Windows.Forms.Form, Text: fs #99; ...|] +val xs: string list = + ["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; "13"; + "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; "24"; "25"; + "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"; + "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"; "48"; "49"; + "50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"; "58"; "59"; "60"; "61"; + "62"; "63"; "64"; "65"; "66"; "67"; "68"; "69"; "70"; "71"; "72"; "73"; + "74"; "75"; "76"; "77"; "78"; "79"; "80"; "81"; "82"; "83"; "84"; "85"; + "86"; "87"; "88"; "89"; "90"; "91"; "92"; "93"; "94"; "95"; "96"; "97"; + "98"; "99"; ...] +val xa: string[] = + [|"0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; "13"; + "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; "24"; "25"; + "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"; + "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"; "48"; "49"; + "50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"; "58"; "59"; "60"; "61"; + "62"; "63"; "64"; "65"; "66"; "67"; "68"; "69"; "70"; "71"; "72"; "73"; + "74"; "75"; "76"; "77"; "78"; "79"; "80"; "81"; "82"; "83"; "84"; "85"; + "86"; "87"; "88"; "89"; "90"; "91"; "92"; "93"; "94"; "95"; "96"; "97"; + "98"; "99"; ...|] +val xa2: string[,] = [["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"] + ["10"; "11"; "12"; "13"; "14"; "15"; "16"; "17"] + ["20"; "21"; "22"; "23"; "24"; "25"; "26"; "27"] + ["30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"] + ["40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"] + ["50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"] + ["60"; "61"; "62"; "63"; "64"; "65"; "66"; "67"] + ["70"; "71"; "72"; "73"; "74"; "75"; "76"; "77"]] +val sxs0: Set = set [] + +> val sxs1: Set = set ["0"] + +> val sxs2: Set = set ["0"; "1"] + +> val sxs3: Set = set ["0"; "1"; "2"] + +> val sxs4: Set = set ["0"; "1"; "2"; "3"] + +> val sxs200: Set = + set ["0"; "1"; "10"; "100"; "101"; "102"; "103"; "104"; "105"; ...] + +> val msxs0: Map = map [] + +> val msxs1: Map = map [(0, "0")] + +> val msxs2: Map = map [(0, "0"); (1, "1")] + +> val msxs3: Map = map [(0, "0"); (1, "1"); (2, "2")] + +> val msxs4: Map = map [(0, "0"); (1, "1"); (2, "2"); (3, "3")] + +> val msxs200: Map = + map + [(0, "0"); (1, "1"); (2, "2"); (3, "3"); (4, "4"); (5, "5"); (6, "6"); + (7, "7"); (8, "8"); ...] + +> module M = + val a: string = "sub-binding" + val b: + (seq * seq * seq * System.Windows.Forms.Form) option * + (string list * string list * string[,]) option = + (Some (, , , System.Windows.Forms.Form, Text: f1 form), + Some + (["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; + "13"; "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; + "24"; "25"; "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; + "35"; "36"; "37"; "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; + "46"; "47"; "48"; "49"; "50"; "51"; "52"; "53"; "54"; "55"; "56"; + "57"; "58"; "59"; "60"; "61"; "62"; "63"; "64"; "65"; "66"; "67"; + "68"; "69"; "70"; "71"; "72"; "73"; "74"; "75"; "76"; "77"; "78"; + "79"; "80"; "81"; "82"; "83"; "84"; "85"; "86"; "87"; "88"; "89"; + "90"; "91"; "92"; "93"; "94"; "95"; "96"; "97"; "98"; "99"; ...], + ["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; + "13"; "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; + "24"; "25"; "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; + "35"; "36"; "37"; "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; + "46"; "47"; "48"; "49"; "50"; "51"; "52"; "53"; "54"; "55"; "56"; + "57"; "58"; "59"; "60"; "61"; "62"; "63"; "64"; "65"; "66"; "67"; + "68"; "69"; "70"; "71"; "72"; "73"; "74"; "75"; "76"; "77"; "78"; + "79"; "80"; "81"; "82"; "83"; "84"; "85"; "86"; "87"; "88"; "89"; + "90"; "91"; "92"; "93"; "94"; "95"; "96"; "97"; "98"; "99"; ...], + [["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"] + ["10"; "11"; "12"; "13"; "14"; "15"; "16"; "17"] + ["20"; "21"; "22"; "23"; "24"; "25"; "26"; "27"] + ["30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"] + ["40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"] + ["50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"] + ["60"; "61"; "62"; "63"; "64"; "65"; "66"; "67"] + ["70"; "71"; "72"; "73"; "74"; "75"; "76"; "77"]])) +type T = + new: a: int * b: int -> T + member AMethod: x: int -> int + static member StaticMethod: x: int -> int + member AProperty: int + static member StaticProperty: int +val f_as_method: x: int -> int +val f_as_thunk: (int -> int) +val refCell: string ref = { contents = "value" } +module D1 = + val words: System.Collections.Generic.IDictionary + val words2000: System.Collections.Generic.IDictionary + +> > module D2 = + val words: IDictionary + val words2000: IDictionary +val opt1: 'a option +val opt1b: int option = None +val opt4: 'a option option option option +val opt4b: int option option option option = Some (Some (Some None)) +val opt5: int list option option option option option list = + [Some (Some (Some (Some None))); + Some (Some (Some (Some (Some [1; 2; 3; 4; 5; 6])))); + Some + (Some + (Some + (Some + (Some + [1; 2; 3; 4; 5; 6; 7; 8; 9; 0; 1; 2; 3; 4; 5; 6; 7; 8; 9; 1; + 2; 3; 4; 5; 6; 7; 8; 9; 1; 2; 3; 4; 5; 6; 7; 8; 9; 1; 2; 3; + 4; 5; 6; 7; 8; 9; 1; 2; 3; 4; 5; 6; 7; 8; 9; 0]))))] +val mkStr: n: int -> string +val strs: string[] = + [|""; "-"; "--"; "---"; "----"; "-----"; "------"; "-------"; "--------"; + "---------"; "----------"; "-----------"; "------------"; "-------------"; + "--------------"; "---------------"; "----------------"; + "-----------------"; "------------------"; "-------------------"; + "--------------------"; "---------------------"; "----------------------"; + "-----------------------"; "------------------------"; + "-------------------------"; "--------------------------"; + "---------------------------"; "----------------------------"; + "-----------------------------"; "------------------------------"; + "-------------------------------"; "--------------------------------"; + "---------------------------------"; "----------------------------------"; + "-----------------------------------"; + "------------------------------------"; + "-------------------------------------"; + "--------------------------------------"; + "---------------------------------------"; + "----------------------------------------"; + "-----------------------------------------"; + "------------------------------------------"; + "-------------------------------------------"; + "--------------------------------------------"; + "---------------------------------------------"; + "----------------------------------------------"; + "-----------------------------------------------"; + "------------------------------------------------"; + "-------------------------------------------------"; + "--------------------------------------------------"; + "---------------------------------------------------"; + "----------------------------------------------------"; + "-----------------------------------------------------"; + "------------------------------------------------------"; + "-------------------------------------------------------"; + "--------------------------------------------------------"; + "---------------------------------------------------------"; + "----------------------------------------------------------"; + "-----------------------------------------------------------"; + "------------------------------------------------------------"; + "-------------------------------------------------------------"; + "--------------------------------------------------------------"; + "---------------------------------------------------------------"; + "----------------------------------------------------------------"; + "-----------------------------------------------------------------"; + "------------------------------------------------------------------"; + "-------------------------------------------------------------------"; + "--------------------------------------------------------------------"; + "---------------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-----------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[12 chars]; + "-------------------------------------------------------------"+[13 chars]; + "-------------------------------------------------------------"+[14 chars]; + "-------------------------------------------------------------"+[15 chars]; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[18 chars]; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[20 chars]; + "-------------------------------------------------------------"+[21 chars]; + "-------------------------------------------------------------"+[22 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[24 chars]; + "-------------------------------------------------------------"+[25 chars]; + "-------------------------------------------------------------"+[26 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[28 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[31 chars]; + "-------------------------------------------------------------"+[32 chars]; + "-------------------------------------------------------------"+[33 chars]; + "-------------------------------------------------------------"+[34 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[36 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[38 chars]|] +val str7s: string[] = + [|""; "-------"; "--------------"; "---------------------"; + "----------------------------"; "-----------------------------------"; + "------------------------------------------"; + "-------------------------------------------------"; + "--------------------------------------------------------"; + "---------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[58 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[72 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[86 chars]; + "-------------------------------------------------------------"+[93 chars]; + "-------------------------------------------------------------"+[100 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[114 chars]; + "-------------------------------------------------------------"+[121 chars]; + "-------------------------------------------------------------"+[128 chars]; + "-------------------------------------------------------------"+[135 chars]; + "-------------------------------------------------------------"+[142 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[156 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[170 chars]; + "-------------------------------------------------------------"+[177 chars]; + "-------------------------------------------------------------"+[184 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[198 chars]; + "-------------------------------------------------------------"+[205 chars]; + "-------------------------------------------------------------"+[212 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[226 chars]; + "-------------------------------------------------------------"+[233 chars]; + "-------------------------------------------------------------"+[240 chars]; + "-------------------------------------------------------------"+[247 chars]; + "-------------------------------------------------------------"+[254 chars]; + "-------------------------------------------------------------"+[261 chars]; + "-------------------------------------------------------------"+[268 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[282 chars]; + "-------------------------------------------------------------"+[289 chars]; + "-------------------------------------------------------------"+[296 chars]; + "-------------------------------------------------------------"+[303 chars]; + "-------------------------------------------------------------"+[310 chars]; + "-------------------------------------------------------------"+[317 chars]; + "-------------------------------------------------------------"+[324 chars]; + "-------------------------------------------------------------"+[331 chars]; + "-------------------------------------------------------------"+[338 chars]; + "-------------------------------------------------------------"+[345 chars]; + "-------------------------------------------------------------"+[352 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[366 chars]; + "-------------------------------------------------------------"+[373 chars]; + "-------------------------------------------------------------"+[380 chars]; + "-------------------------------------------------------------"+[387 chars]; + "-------------------------------------------------------------"+[394 chars]; + "-------------------------------------------------------------"+[401 chars]; + "-------------------------------------------------------------"+[408 chars]; + "-------------------------------------------------------------"+[415 chars]; + "-------------------------------------------------------------"+[422 chars]; + "-------------------------------------------------------------"+[429 chars]; + "-------------------------------------------------------------"+[436 chars]; + "-------------------------------------------------------------"+[443 chars]; + "-------------------------------------------------------------"+[450 chars]; + "-------------------------------------------------------------"+[457 chars]; + "-------------------------------------------------------------"+[464 chars]; + "-------------------------------------------------------------"+[471 chars]; + "-------------------------------------------------------------"+[478 chars]; + "-------------------------------------------------------------"+[485 chars]; + "-------------------------------------------------------------"+[492 chars]; + "-------------------------------------------------------------"+[499 chars]; + "-------------------------------------------------------------"+[506 chars]; + "-------------------------------------------------------------"+[513 chars]; + "-------------------------------------------------------------"+[520 chars]; + "-------------------------------------------------------------"+[527 chars]; + "-------------------------------------------------------------"+[534 chars]; + "-------------------------------------------------------------"+[541 chars]; + "-------------------------------------------------------------"+[548 chars]; + "-------------------------------------------------------------"+[555 chars]; + "-------------------------------------------------------------"+[562 chars]; + "-------------------------------------------------------------"+[569 chars]; + "-------------------------------------------------------------"+[576 chars]; + "-------------------------------------------------------------"+[583 chars]; + "-------------------------------------------------------------"+[590 chars]; + "-------------------------------------------------------------"+[597 chars]; + "-------------------------------------------------------------"+[604 chars]; + "-------------------------------------------------------------"+[611 chars]; + "-------------------------------------------------------------"+[618 chars]; + "-------------------------------------------------------------"+[625 chars]; + "-------------------------------------------------------------"+[632 chars]|] +val grids: string[,] = + [[""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; + ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; + ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""] + [""; "-"; "--"; "---"; "----"; "-----"; "------"; "-------"; "--------"; + "---------"; "----------"; "-----------"; "------------"; "-------------"; + "--------------"; "---------------"; "----------------"; + "-----------------"; "------------------"; "-------------------"; + "--------------------"; "---------------------"; "----------------------"; + "-----------------------"; "------------------------"; + "-------------------------"; "--------------------------"; + "---------------------------"; "----------------------------"; + "-----------------------------"; "------------------------------"; + "-------------------------------"; "--------------------------------"; + "---------------------------------"; "----------------------------------"; + "-----------------------------------"; + "------------------------------------"; + "-------------------------------------"; + "--------------------------------------"; + "---------------------------------------"; + "----------------------------------------"; + "-----------------------------------------"; + "------------------------------------------"; + "-------------------------------------------"; + "--------------------------------------------"; + "---------------------------------------------"; + "----------------------------------------------"; + "-----------------------------------------------"; + "------------------------------------------------"; + "-------------------------------------------------"] + [""; "--"; "----"; "------"; "--------"; "----------"; "------------"; + "--------------"; "----------------"; "------------------"; + "--------------------"; "----------------------"; + "------------------------"; "--------------------------"; + "----------------------------"; "------------------------------"; + "--------------------------------"; "----------------------------------"; + "------------------------------------"; + "--------------------------------------"; + "----------------------------------------"; + "------------------------------------------"; + "--------------------------------------------"; + "----------------------------------------------"; + "------------------------------------------------"; + "--------------------------------------------------"; + "----------------------------------------------------"; + "------------------------------------------------------"; + "--------------------------------------------------------"; + "----------------------------------------------------------"; + "------------------------------------------------------------"; + "--------------------------------------------------------------"; + "----------------------------------------------------------------"; + "------------------------------------------------------------------"; + "--------------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[13 chars]; + "-------------------------------------------------------------"+[15 chars]; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[21 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[25 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[31 chars]; + "-------------------------------------------------------------"+[33 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[37 chars]] + [""; "---"; "------"; "---------"; "------------"; "---------------"; + "------------------"; "---------------------"; "------------------------"; + "---------------------------"; "------------------------------"; + "---------------------------------"; + "------------------------------------"; + "---------------------------------------"; + "------------------------------------------"; + "---------------------------------------------"; + "------------------------------------------------"; + "---------------------------------------------------"; + "------------------------------------------------------"; + "---------------------------------------------------------"; + "------------------------------------------------------------"; + "---------------------------------------------------------------"; + "------------------------------------------------------------------"; + "---------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[14 chars]; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[20 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[26 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[32 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[38 chars]; + "-------------------------------------------------------------"+[41 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[50 chars]; + "-------------------------------------------------------------"+[53 chars]; + "-------------------------------------------------------------"+[56 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[62 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[68 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[74 chars]; + "-------------------------------------------------------------"+[77 chars]; + "-------------------------------------------------------------"+[80 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[86 chars]] + [""; "----"; "--------"; "------------"; "----------------"; + "--------------------"; "------------------------"; + "----------------------------"; "--------------------------------"; + "------------------------------------"; + "----------------------------------------"; + "--------------------------------------------"; + "------------------------------------------------"; + "----------------------------------------------------"; + "--------------------------------------------------------"; + "------------------------------------------------------------"; + "----------------------------------------------------------------"; + "--------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[15 chars]; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[31 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[39 chars]; + "-------------------------------------------------------------"+[43 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[55 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[63 chars]; + "-------------------------------------------------------------"+[67 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[75 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[87 chars]; + "-------------------------------------------------------------"+[91 chars]; + "-------------------------------------------------------------"+[95 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[103 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[111 chars]; + "-------------------------------------------------------------"+[115 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[123 chars]; + "-------------------------------------------------------------"+[127 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[135 chars]] + [""; "-----"; "----------"; "---------------"; "--------------------"; + "-------------------------"; "------------------------------"; + "-----------------------------------"; + "----------------------------------------"; + "---------------------------------------------"; + "--------------------------------------------------"; + "-------------------------------------------------------"; + "------------------------------------------------------------"; + "-----------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[14 chars]; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[24 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[34 chars]; + "-------------------------------------------------------------"+[39 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[49 chars]; + "-------------------------------------------------------------"+[54 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[64 chars]; + "-------------------------------------------------------------"+[69 chars]; + "-------------------------------------------------------------"+[74 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[84 chars]; + "-------------------------------------------------------------"+[89 chars]; + "-------------------------------------------------------------"+[94 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[104 chars]; + "-------------------------------------------------------------"+[109 chars]; + "-------------------------------------------------------------"+[114 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[124 chars]; + "-------------------------------------------------------------"+[129 chars]; + "-------------------------------------------------------------"+[134 chars]; + "-------------------------------------------------------------"+[139 chars]; + "-------------------------------------------------------------"+[144 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[154 chars]; + "-------------------------------------------------------------"+[159 chars]; + "-------------------------------------------------------------"+[164 chars]; + "-------------------------------------------------------------"+[169 chars]; + "-------------------------------------------------------------"+[174 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[184 chars]] + [""; "------"; "------------"; "------------------"; + "------------------------"; "------------------------------"; + "------------------------------------"; + "------------------------------------------"; + "------------------------------------------------"; + "------------------------------------------------------"; + "------------------------------------------------------------"; + "------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[41 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[53 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[77 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[89 chars]; + "-------------------------------------------------------------"+[95 chars]; + "-------------------------------------------------------------"+[101 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[113 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[125 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[137 chars]; + "-------------------------------------------------------------"+[143 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[161 chars]; + "-------------------------------------------------------------"+[167 chars]; + "-------------------------------------------------------------"+[173 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[185 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[197 chars]; + "-------------------------------------------------------------"+[203 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[215 chars]; + "-------------------------------------------------------------"+[221 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[233 chars]] + [""; "-------"; "--------------"; "---------------------"; + "----------------------------"; "-----------------------------------"; + "------------------------------------------"; + "-------------------------------------------------"; + "--------------------------------------------------------"; + "---------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[58 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[72 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[86 chars]; + "-------------------------------------------------------------"+[93 chars]; + "-------------------------------------------------------------"+[100 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[114 chars]; + "-------------------------------------------------------------"+[121 chars]; + "-------------------------------------------------------------"+[128 chars]; + "-------------------------------------------------------------"+[135 chars]; + "-------------------------------------------------------------"+[142 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[156 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[170 chars]; + "-------------------------------------------------------------"+[177 chars]; + "-------------------------------------------------------------"+[184 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[198 chars]; + "-------------------------------------------------------------"+[205 chars]; + "-------------------------------------------------------------"+[212 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[226 chars]; + "-------------------------------------------------------------"+[233 chars]; + "-------------------------------------------------------------"+[240 chars]; + "-------------------------------------------------------------"+[247 chars]; + "-------------------------------------------------------------"+[254 chars]; + "-------------------------------------------------------------"+[261 chars]; + "-------------------------------------------------------------"+[268 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[282 chars]] + [""; "--------"; "----------------"; "------------------------"; + "--------------------------------"; + "----------------------------------------"; + "------------------------------------------------"; + "--------------------------------------------------------"; + "----------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[43 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[67 chars]; + "-------------------------------------------------------------"+[75 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[91 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[115 chars]; + "-------------------------------------------------------------"+[123 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[139 chars]; + "-------------------------------------------------------------"+[147 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[171 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[187 chars]; + "-------------------------------------------------------------"+[195 chars]; + "-------------------------------------------------------------"+[203 chars]; + "-------------------------------------------------------------"+[211 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[235 chars]; + "-------------------------------------------------------------"+[243 chars]; + "-------------------------------------------------------------"+[251 chars]; + "-------------------------------------------------------------"+[259 chars]; + "-------------------------------------------------------------"+[267 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[283 chars]; + "-------------------------------------------------------------"+[291 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[307 chars]; + "-------------------------------------------------------------"+[315 chars]; + "-------------------------------------------------------------"+[323 chars]; + "-------------------------------------------------------------"+[331 chars]] + [""; "---------"; "------------------"; "---------------------------"; + "------------------------------------"; + "---------------------------------------------"; + "------------------------------------------------------"; + "---------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[20 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[38 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[56 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[74 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[92 chars]; + "-------------------------------------------------------------"+[101 chars]; + "-------------------------------------------------------------"+[110 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[128 chars]; + "-------------------------------------------------------------"+[137 chars]; + "-------------------------------------------------------------"+[146 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[164 chars]; + "-------------------------------------------------------------"+[173 chars]; + "-------------------------------------------------------------"+[182 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[200 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[218 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[236 chars]; + "-------------------------------------------------------------"+[245 chars]; + "-------------------------------------------------------------"+[254 chars]; + "-------------------------------------------------------------"+[263 chars]; + "-------------------------------------------------------------"+[272 chars]; + "-------------------------------------------------------------"+[281 chars]; + "-------------------------------------------------------------"+[290 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[308 chars]; + "-------------------------------------------------------------"+[317 chars]; + "-------------------------------------------------------------"+[326 chars]; + "-------------------------------------------------------------"+[335 chars]; + "-------------------------------------------------------------"+[344 chars]; + "-------------------------------------------------------------"+[353 chars]; + "-------------------------------------------------------------"+[362 chars]; + "-------------------------------------------------------------"+[371 chars]; + "-------------------------------------------------------------"+[380 chars]] + [""; "----------"; "--------------------"; "------------------------------"; + "----------------------------------------"; + "--------------------------------------------------"; + "------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[39 chars]; + "-------------------------------------------------------------"+[49 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[69 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[89 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[109 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[129 chars]; + "-------------------------------------------------------------"+[139 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[159 chars]; + "-------------------------------------------------------------"+[169 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[189 chars]; + "-------------------------------------------------------------"+[199 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[229 chars]; + "-------------------------------------------------------------"+[239 chars]; + "-------------------------------------------------------------"+[249 chars]; + "-------------------------------------------------------------"+[259 chars]; + "-------------------------------------------------------------"+[269 chars]; + "-------------------------------------------------------------"+[279 chars]; + "-------------------------------------------------------------"+[289 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[309 chars]; + "-------------------------------------------------------------"+[319 chars]; + "-------------------------------------------------------------"+[329 chars]; + "-------------------------------------------------------------"+[339 chars]; + "-------------------------------------------------------------"+[349 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[369 chars]; + "-------------------------------------------------------------"+[379 chars]; + "-------------------------------------------------------------"+[389 chars]; + "-------------------------------------------------------------"+[399 chars]; + "-------------------------------------------------------------"+[409 chars]; + "-------------------------------------------------------------"+[419 chars]; + "-------------------------------------------------------------"+[429 chars]] + [""; "-----------"; "----------------------"; + "---------------------------------"; + "--------------------------------------------"; + "-------------------------------------------------------"; + "------------------------------------------------------------------"; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[38 chars]; + "-------------------------------------------------------------"+[49 chars]; + "-------------------------------------------------------------"+[60 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[82 chars]; + "-------------------------------------------------------------"+[93 chars]; + "-------------------------------------------------------------"+[104 chars]; + "-------------------------------------------------------------"+[115 chars]; + "-------------------------------------------------------------"+[126 chars]; + "-------------------------------------------------------------"+[137 chars]; + "-------------------------------------------------------------"+[148 chars]; + "-------------------------------------------------------------"+[159 chars]; + "-------------------------------------------------------------"+[170 chars]; + "-------------------------------------------------------------"+[181 chars]; + "-------------------------------------------------------------"+[192 chars]; + "-------------------------------------------------------------"+[203 chars]; + "-------------------------------------------------------------"+[214 chars]; + "-------------------------------------------------------------"+[225 chars]; + "-------------------------------------------------------------"+[236 chars]; + "-------------------------------------------------------------"+[247 chars]; + "-------------------------------------------------------------"+[258 chars]; + "-------------------------------------------------------------"+[269 chars]; + "-------------------------------------------------------------"+[280 chars]; + "-------------------------------------------------------------"+[291 chars]; + "-------------------------------------------------------------"+[302 chars]; + "-------------------------------------------------------------"+[313 chars]; + "-------------------------------------------------------------"+[324 chars]; + "-------------------------------------------------------------"+[335 chars]; + "-------------------------------------------------------------"+[346 chars]; + "-------------------------------------------------------------"+[357 chars]; + "-------------------------------------------------------------"+[368 chars]; + "-------------------------------------------------------------"+[379 chars]; + "-------------------------------------------------------------"+[390 chars]; + "-------------------------------------------------------------"+[401 chars]; + "-------------------------------------------------------------"+[412 chars]; + "-------------------------------------------------------------"+[423 chars]; + "-------------------------------------------------------------"+[434 chars]; + "-------------------------------------------------------------"+[445 chars]; + "-------------------------------------------------------------"+[456 chars]; + "-------------------------------------------------------------"+[467 chars]; + "-------------------------------------------------------------"+[478 chars]] + [""; "------------"; "------------------------"; + "------------------------------------"; + "------------------------------------------------"; + "------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[95 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[143 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[167 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[203 chars]; + "-------------------------------------------------------------"+[215 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[239 chars]; + "-------------------------------------------------------------"+[251 chars]; + "-------------------------------------------------------------"+[263 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[287 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[311 chars]; + "-------------------------------------------------------------"+[323 chars]; + "-------------------------------------------------------------"+[335 chars]; + "-------------------------------------------------------------"+[347 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[371 chars]; + "-------------------------------------------------------------"+[383 chars]; + "-------------------------------------------------------------"+[395 chars]; + "-------------------------------------------------------------"+[407 chars]; + "-------------------------------------------------------------"+[419 chars]; + "-------------------------------------------------------------"+[431 chars]; + "-------------------------------------------------------------"+[443 chars]; + "-------------------------------------------------------------"+[455 chars]; + "-------------------------------------------------------------"+[467 chars]; + "-------------------------------------------------------------"+[479 chars]; + "-------------------------------------------------------------"+[491 chars]; + "-------------------------------------------------------------"+[503 chars]; + "-------------------------------------------------------------"+[515 chars]; + "-------------------------------------------------------------"+[527 chars]] + [""; "-------------"; "--------------------------"; + "---------------------------------------"; + "----------------------------------------------------"; + "-----------------------------------------------------------------"; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[43 chars]; + "-------------------------------------------------------------"+[56 chars]; + "-------------------------------------------------------------"+[69 chars]; + "-------------------------------------------------------------"+[82 chars]; + "-------------------------------------------------------------"+[95 chars]; + "-------------------------------------------------------------"+[108 chars]; + "-------------------------------------------------------------"+[121 chars]; + "-------------------------------------------------------------"+[134 chars]; + "-------------------------------------------------------------"+[147 chars]; + "-------------------------------------------------------------"+[160 chars]; + "-------------------------------------------------------------"+[173 chars]; + "-------------------------------------------------------------"+[186 chars]; + "-------------------------------------------------------------"+[199 chars]; + "-------------------------------------------------------------"+[212 chars]; + "-------------------------------------------------------------"+[225 chars]; + "-------------------------------------------------------------"+[238 chars]; + "-------------------------------------------------------------"+[251 chars]; + "-------------------------------------------------------------"+[264 chars]; + "-------------------------------------------------------------"+[277 chars]; + "-------------------------------------------------------------"+[290 chars]; + "-------------------------------------------------------------"+[303 chars]; + "-------------------------------------------------------------"+[316 chars]; + "-------------------------------------------------------------"+[329 chars]; + "-------------------------------------------------------------"+[342 chars]; + "-------------------------------------------------------------"+[355 chars]; + "-------------------------------------------------------------"+[368 chars]; + "-------------------------------------------------------------"+[381 chars]; + "-------------------------------------------------------------"+[394 chars]; + "-------------------------------------------------------------"+[407 chars]; + "-------------------------------------------------------------"+[420 chars]; + "-------------------------------------------------------------"+[433 chars]; + "-------------------------------------------------------------"+[446 chars]; + "-------------------------------------------------------------"+[459 chars]; + "-------------------------------------------------------------"+[472 chars]; + "-------------------------------------------------------------"+[485 chars]; + "-------------------------------------------------------------"+[498 chars]; + "-------------------------------------------------------------"+[511 chars]; + "-------------------------------------------------------------"+[524 chars]; + "-------------------------------------------------------------"+[537 chars]; + "-------------------------------------------------------------"+[550 chars]; + "-------------------------------------------------------------"+[563 chars]; + "-------------------------------------------------------------"+[576 chars]] + [""; "--------------"; "----------------------------"; + "------------------------------------------"; + "--------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[93 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[121 chars]; + "-------------------------------------------------------------"+[135 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[177 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[205 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[233 chars]; + "-------------------------------------------------------------"+[247 chars]; + "-------------------------------------------------------------"+[261 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[289 chars]; + "-------------------------------------------------------------"+[303 chars]; + "-------------------------------------------------------------"+[317 chars]; + "-------------------------------------------------------------"+[331 chars]; + "-------------------------------------------------------------"+[345 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[373 chars]; + "-------------------------------------------------------------"+[387 chars]; + "-------------------------------------------------------------"+[401 chars]; + "-------------------------------------------------------------"+[415 chars]; + "-------------------------------------------------------------"+[429 chars]; + "-------------------------------------------------------------"+[443 chars]; + "-------------------------------------------------------------"+[457 chars]; + "-------------------------------------------------------------"+[471 chars]; + "-------------------------------------------------------------"+[485 chars]; + "-------------------------------------------------------------"+[499 chars]; + "-------------------------------------------------------------"+[513 chars]; + "-------------------------------------------------------------"+[527 chars]; + "-------------------------------------------------------------"+[541 chars]; + "-------------------------------------------------------------"+[555 chars]; + "-------------------------------------------------------------"+[569 chars]; + "-------------------------------------------------------------"+[583 chars]; + "-------------------------------------------------------------"+[597 chars]; + "-------------------------------------------------------------"+[611 chars]; + "-------------------------------------------------------------"+[625 chars]] + [""; "---------------"; "------------------------------"; + "---------------------------------------------"; + "------------------------------------------------------------"; + "-------------------------------------------------------------"+[14 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[74 chars]; + "-------------------------------------------------------------"+[89 chars]; + "-------------------------------------------------------------"+[104 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[134 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[164 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[194 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[224 chars]; + "-------------------------------------------------------------"+[239 chars]; + "-------------------------------------------------------------"+[254 chars]; + "-------------------------------------------------------------"+[269 chars]; + "-------------------------------------------------------------"+[284 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[314 chars]; + "-------------------------------------------------------------"+[329 chars]; + "-------------------------------------------------------------"+[344 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[374 chars]; + "-------------------------------------------------------------"+[389 chars]; + "-------------------------------------------------------------"+[404 chars]; + "-------------------------------------------------------------"+[419 chars]; + "-------------------------------------------------------------"+[434 chars]; + "-------------------------------------------------------------"+[449 chars]; + "-------------------------------------------------------------"+[464 chars]; + "-------------------------------------------------------------"+[479 chars]; + "-------------------------------------------------------------"+[494 chars]; + "-------------------------------------------------------------"+[509 chars]; + "-------------------------------------------------------------"+[524 chars]; + "-------------------------------------------------------------"+[539 chars]; + "-------------------------------------------------------------"+[554 chars]; + "-------------------------------------------------------------"+[569 chars]; + "-------------------------------------------------------------"+[584 chars]; + "-------------------------------------------------------------"+[599 chars]; + "-------------------------------------------------------------"+[614 chars]; + "-------------------------------------------------------------"+[629 chars]; + "-------------------------------------------------------------"+[644 chars]; + "-------------------------------------------------------------"+[659 chars]; + "-------------------------------------------------------------"+[674 chars]] + [""; "----------------"; "--------------------------------"; + "------------------------------------------------"; + "----------------------------------------------------------------"; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[67 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[115 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[147 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[195 chars]; + "-------------------------------------------------------------"+[211 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[243 chars]; + "-------------------------------------------------------------"+[259 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[291 chars]; + "-------------------------------------------------------------"+[307 chars]; + "-------------------------------------------------------------"+[323 chars]; + "-------------------------------------------------------------"+[339 chars]; + "-------------------------------------------------------------"+[355 chars]; + "-------------------------------------------------------------"+[371 chars]; + "-------------------------------------------------------------"+[387 chars]; + "-------------------------------------------------------------"+[403 chars]; + "-------------------------------------------------------------"+[419 chars]; + "-------------------------------------------------------------"+[435 chars]; + "-------------------------------------------------------------"+[451 chars]; + "-------------------------------------------------------------"+[467 chars]; + "-------------------------------------------------------------"+[483 chars]; + "-------------------------------------------------------------"+[499 chars]; + "-------------------------------------------------------------"+[515 chars]; + "-------------------------------------------------------------"+[531 chars]; + "-------------------------------------------------------------"+[547 chars]; + "-------------------------------------------------------------"+[563 chars]; + "-------------------------------------------------------------"+[579 chars]; + "-------------------------------------------------------------"+[595 chars]; + "-------------------------------------------------------------"+[611 chars]; + "-------------------------------------------------------------"+[627 chars]; + "-------------------------------------------------------------"+[643 chars]; + "-------------------------------------------------------------"+[659 chars]; + "-------------------------------------------------------------"+[675 chars]; + "-------------------------------------------------------------"+[691 chars]; + "-------------------------------------------------------------"+[707 chars]; + "-------------------------------------------------------------"+[723 chars]] + [""; "-----------------"; "----------------------------------"; + "---------------------------------------------------"; + "--------------------------------------------------------------------"; + "-------------------------------------------------------------"+[24 chars]; + "-------------------------------------------------------------"+[41 chars]; + "-------------------------------------------------------------"+[58 chars]; + "-------------------------------------------------------------"+[75 chars]; + "-------------------------------------------------------------"+[92 chars]; + "-------------------------------------------------------------"+[109 chars]; + "-------------------------------------------------------------"+[126 chars]; + "-------------------------------------------------------------"+[143 chars]; + "-------------------------------------------------------------"+[160 chars]; + "-------------------------------------------------------------"+[177 chars]; + "-------------------------------------------------------------"+[194 chars]; + "-------------------------------------------------------------"+[211 chars]; + "-------------------------------------------------------------"+[228 chars]; + "-------------------------------------------------------------"+[245 chars]; + "-------------------------------------------------------------"+[262 chars]; + "-------------------------------------------------------------"+[279 chars]; + "-------------------------------------------------------------"+[296 chars]; + "-------------------------------------------------------------"+[313 chars]; + "-------------------------------------------------------------"+[330 chars]; + "-------------------------------------------------------------"+[347 chars]; + "-------------------------------------------------------------"+[364 chars]; + "-------------------------------------------------------------"+[381 chars]; + "-------------------------------------------------------------"+[398 chars]; + "-------------------------------------------------------------"+[415 chars]; + "-------------------------------------------------------------"+[432 chars]; + "-------------------------------------------------------------"+[449 chars]; + "-------------------------------------------------------------"+[466 chars]; + "-------------------------------------------------------------"+[483 chars]; + "-------------------------------------------------------------"+[500 chars]; + "-------------------------------------------------------------"+[517 chars]; + "-------------------------------------------------------------"+[534 chars]; + "-------------------------------------------------------------"+[551 chars]; + "-------------------------------------------------------------"+[568 chars]; + "-------------------------------------------------------------"+[585 chars]; + "-------------------------------------------------------------"+[602 chars]; + "-------------------------------------------------------------"+[619 chars]; + "-------------------------------------------------------------"+[636 chars]; + "-------------------------------------------------------------"+[653 chars]; + "-------------------------------------------------------------"+[670 chars]; + "-------------------------------------------------------------"+[687 chars]; + "-------------------------------------------------------------"+[704 chars]; + "-------------------------------------------------------------"+[721 chars]; + "-------------------------------------------------------------"+[738 chars]; + "-------------------------------------------------------------"+[755 chars]; + "-------------------------------------------------------------"+[772 chars]] + [""; "------------------"; "------------------------------------"; + "------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[101 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[137 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[173 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[245 chars]; + "-------------------------------------------------------------"+[263 chars]; + "-------------------------------------------------------------"+[281 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[317 chars]; + "-------------------------------------------------------------"+[335 chars]; + "-------------------------------------------------------------"+[353 chars]; + "-------------------------------------------------------------"+[371 chars]; + "-------------------------------------------------------------"+[389 chars]; + "-------------------------------------------------------------"+[407 chars]; + "-------------------------------------------------------------"+[425 chars]; + "-------------------------------------------------------------"+[443 chars]; + "-------------------------------------------------------------"+[461 chars]; + "-------------------------------------------------------------"+[479 chars]; + "-------------------------------------------------------------"+[497 chars]; + "-------------------------------------------------------------"+[515 chars]; + "-------------------------------------------------------------"+[533 chars]; + "-------------------------------------------------------------"+[551 chars]; + "-------------------------------------------------------------"+[569 chars]; + "-------------------------------------------------------------"+[587 chars]; + "-------------------------------------------------------------"+[605 chars]; + "-------------------------------------------------------------"+[623 chars]; + "-------------------------------------------------------------"+[641 chars]; + "-------------------------------------------------------------"+[659 chars]; + "-------------------------------------------------------------"+[677 chars]; + "-------------------------------------------------------------"+[695 chars]; + "-------------------------------------------------------------"+[713 chars]; + "-------------------------------------------------------------"+[731 chars]; + "-------------------------------------------------------------"+[749 chars]; + "-------------------------------------------------------------"+[767 chars]; + "-------------------------------------------------------------"+[785 chars]; + "-------------------------------------------------------------"+[803 chars]; + "-------------------------------------------------------------"+[821 chars]] + [""; "-------------------"; "--------------------------------------"; + "---------------------------------------------------------"; + "-------------------------------------------------------------"+[15 chars]; + "-------------------------------------------------------------"+[34 chars]; + "-------------------------------------------------------------"+[53 chars]; + "-------------------------------------------------------------"+[72 chars]; + "-------------------------------------------------------------"+[91 chars]; + "-------------------------------------------------------------"+[110 chars]; + "-------------------------------------------------------------"+[129 chars]; + "-------------------------------------------------------------"+[148 chars]; + "-------------------------------------------------------------"+[167 chars]; + "-------------------------------------------------------------"+[186 chars]; + "-------------------------------------------------------------"+[205 chars]; + "-------------------------------------------------------------"+[224 chars]; + "-------------------------------------------------------------"+[243 chars]; + "-------------------------------------------------------------"+[262 chars]; + "-------------------------------------------------------------"+[281 chars]; + "-------------------------------------------------------------"+[300 chars]; + "-------------------------------------------------------------"+[319 chars]; + "-------------------------------------------------------------"+[338 chars]; + "-------------------------------------------------------------"+[357 chars]; + "-------------------------------------------------------------"+[376 chars]; + "-------------------------------------------------------------"+[395 chars]; + "-------------------------------------------------------------"+[414 chars]; + "-------------------------------------------------------------"+[433 chars]; + "-------------------------------------------------------------"+[452 chars]; + "-------------------------------------------------------------"+[471 chars]; + "-------------------------------------------------------------"+[490 chars]; + "-------------------------------------------------------------"+[509 chars]; + "-------------------------------------------------------------"+[528 chars]; + "-------------------------------------------------------------"+[547 chars]; + "-------------------------------------------------------------"+[566 chars]; + "-------------------------------------------------------------"+[585 chars]; + "-------------------------------------------------------------"+[604 chars]; + "-------------------------------------------------------------"+[623 chars]; + "-------------------------------------------------------------"+[642 chars]; + "-------------------------------------------------------------"+[661 chars]; + "-------------------------------------------------------------"+[680 chars]; + "-------------------------------------------------------------"+[699 chars]; + "-------------------------------------------------------------"+[718 chars]; + "-------------------------------------------------------------"+[737 chars]; + "-------------------------------------------------------------"+[756 chars]; + "-------------------------------------------------------------"+[775 chars]; + "-------------------------------------------------------------"+[794 chars]; + "-------------------------------------------------------------"+[813 chars]; + "-------------------------------------------------------------"+[832 chars]; + "-------------------------------------------------------------"+[851 chars]; + "-------------------------------------------------------------"+[870 chars]; + ...] + ...] + +> type tree = + | L + | N of tree list +val mkT: w: int -> d: int -> tree +val tree: w: int -> d: int -> tree + +> [Building 2 4...done] +val tree_2_4: tree = + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]] + +> [Building 2 6...done] +val tree_2_6: tree = + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]] + +> [Building 2 8...done] +val tree_2_8: tree = + N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]] + +> [Building 2 10...done] +val tree_2_10: tree = + N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]]; + N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N ...; ...]; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...] + +> [Building 2 12...done] +val tree_2_12: tree = + N [N [N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]]; + N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; ...]; ...]; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 2 14...done] +val tree_2_14: tree = + N [N [N [N [N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]]]; + N [N [N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N ...; ...]; ...]; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 3 8...done] +val tree_3_8: tree = + N [N [N [N [N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]]; + N [N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]]; + N [N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...] + +> [Building 4 8...done] +val tree_4_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]]; + N [N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]]; + N [N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 5 8...done] +val tree_5_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]]; + N [N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N ...; ...]; ...]; ...]; ...]; ...]; + ...]; ...] + +> [Building 6 8...done] +val tree_6_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]]; + N [N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]]; + N [N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]]; + N [N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N ...; ...]; ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 5 3...done] +val tree_5_3: tree = + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]] + +> > type X = + | Var of int + | Bop of int * X * X +val generate: x: int -> X + +> val exps: X list = + [Bop (1, Var 0, Var 0); Var 2; + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)); Var 4; + Bop (5, Var 2, Bop (1, Var 0, Var 0)); Var 6; + Bop (7, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)), Var 2); + Var 8; + Bop (9, Var 4, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0))); + Var 10; + Bop + (213, Var 106, + Bop + (71, + Bop + (35, Bop (17, Var 8, Bop (5, Var 2, Bop (1, Var 0, Var 0))), + Bop + (11, Bop (5, Var 2, Bop (1, Var 0, Var 0)), + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)))), + Bop + (23, + Bop + (11, Bop (5, Var 2, Bop (1, Var 0, Var 0)), + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0))), + Bop + (7, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)), Var 2)))); + Var 21342314; Var 3214; Bop (1231357, Var 615678, Var 410452); + Bop + (5234547, Bop (2617273, Var 1308636, Var 872424), + Bop (1744849, Var 872424, Var 581616)); + Bop + (923759825, Var 461879912, Bop (307919941, Var 153959970, Var 102639980)); + Var 2435234; + Bop + (12396777, Var 6198388, + Bop + (4132259, + Bop + (2066129, Var 1033064, + Bop + (688709, Var 344354, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502))))), + Bop + (1377419, + Bop + (688709, Var 344354, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502)))), + Bop + (459139, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502))), + Var 153046)))); + Bop + (3333333, Var 1666666, + Bop + (1111111, + Bop + (555555, Bop (277777, Var 138888, Var 92592), + Bop (185185, Var 92592, Var 61728)), Var 370370)); + Bop + (1312311237, Var 656155618, + Bop + (437437079, + Bop + (218718539, + Bop + (109359269, Var 54679634, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38))), + Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114)))), + Bop + (72906179, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38))), + Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114))), + Bop (24302059, Bop (12151029, ..., ...), ...))), ...)); ...] + +> module Exprs = + val x1: X = + Bop + (213, Var 106, + Bop + (71, + Bop + (35, Bop (17, Var 8, Bop (5, Var 2, Bop (1, Var 0, Var 0))), + Bop + (11, Bop (5, Var 2, Bop (1, Var 0, Var 0)), + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)))), + Bop + (23, + Bop + (11, Bop (5, Var 2, Bop (1, Var 0, Var 0)), + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0))), + Bop + (7, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)), + Var 2)))) + val x2: X = Var 21342314 + val x3: X = Var 3214 + val x4: X = Bop (1231357, Var 615678, Var 410452) + val x5: X = + Bop + (5234547, Bop (2617273, Var 1308636, Var 872424), + Bop (1744849, Var 872424, Var 581616)) + val x6: X = + Bop + (923759825, Var 461879912, Bop (307919941, Var 153959970, Var 102639980)) + val x7: X = Var 2435234 + val x8: X = + Bop + (12396777, Var 6198388, + Bop + (4132259, + Bop + (2066129, Var 1033064, + Bop + (688709, Var 344354, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502))))), + Bop + (1377419, + Bop + (688709, Var 344354, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502)))), + Bop + (459139, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502))), + Var 153046)))) + val x9: X = + Bop + (3333333, Var 1666666, + Bop + (1111111, + Bop + (555555, Bop (277777, Var 138888, Var 92592), + Bop (185185, Var 92592, Var 61728)), Var 370370)) + val x10: X = + Bop + (1312311237, Var 656155618, + Bop + (437437079, + Bop + (218718539, + Bop + (109359269, Var 54679634, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop + (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))), Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114)))), + Bop + (72906179, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop + (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))), Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114))), + Bop + (24302059, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop + (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))), Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114)), Var 8100686))), + Bop + (145812359, + Bop + (72906179, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop + (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + ...), ...))), + ...)))), ...), ...)), + ...))), ...))), ...), ...))) + val x11: X = + Bop + (2147483647, + Bop + (1073741823, + Bop + (536870911, + Bop + (268435455, + Bop + (134217727, + Bop + (67108863, + Bop + (33554431, + Bop + (16777215, + Bop + (8388607, + Bop + (4194303, + Bop + (2097151, + Bop + (1048575, + Bop + (524287, + Bop + (262143, + Bop + (131071, + Bop + (65535, + Bop + (32767, + Bop + (16383, + Bop + (8191, + Bop + (4095, + Bop + (2047, + Bop + (1023, + Bop + (511, + Bop + (255, + Bop + (127, + Bop + (63, + Bop + (31, + Bop + (15, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var + 2), + Bop + (5, + Var + 2, + Bop + (1, + Var + 0, + Var + 0))), + Var + 10), + Bop + (21, + Var + 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var + 2))), + Var + 42), + Bop + (85, + Var + 42, + Var + 28)), + Var + 170), + Bop + (341, + Var + 170, + Bop + (113, + Var + 56, + Bop + (37, + Var + 18, + Var + 12)))), + Var 682), + Bop + (1365, + Var 682, + Bop + (455, + Bop + (227, + Bop + (113, + Var + 56, + Bop + (37, + Var + 18, + Var + 12)), + Bop + (75, + Bop + (37, + Var + 18, + Var + 12), + Bop + (25, + Var + 12, + Var + 8))), + Bop + (151, + Bop + (75, + Bop + (37, + Var + 18, + Var + 12), + Bop + (25, + Var + 12, + Var + 8)), + Var + 50)))), + Var 2730), + Bop + (5461, Var 2730, + Var 1820)), + Var 10922), + Bop + (21845, Var 10922, + Bop + (7281, Var 3640, + Bop + (2427, + Bop + (1213, Var 606, + Var 404), + Bop + (809, Var 404, + Bop + (269, + Var 134, + Bop + (89, + Var 44, + Bop + (29, + Var + 14, + Bop + (9, + Var + 4, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))))))))))), + Var 43690), + Bop + (87381, Var 43690, + Bop + (29127, + Bop + (14563, + Bop + (7281, Var 3640, + Bop + (2427, + Bop + (1213, Var 606, + Var 404), + Bop + (809, Var 404, + Bop + (269, + Var 134, + Bop + (89, + Var 44, + Bop + (29, + Var + 14, + Bop + (9, + Var + 4, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))))))))), + Var 4854), + Bop + (9709, Var 4854, + Var 3236)))), + Var 174762), + Bop (349525, Var 174762, Var 116508)), + Var 699050), + Bop + (1398101, Var 699050, + Bop (466033, Var 233016, Var 155344))), + Var 2796202), + Bop + (5592405, Var 2796202, + Bop + (1864135, + Bop + (932067, + Bop (466033, Var 233016, Var 155344), + Bop + (310689, Var 155344, + Bop + (103563, + Bop (51781, Var 25890, Var 17260), + Bop + (34521, Var 17260, + Bop + (11507, + Bop + (5753, Var 2876, + Bop + (1917, Var 958, + Bop + (639, + Bop + (319, + Bop + (159, + Bop + (79, + Bop + (39, + Bop + (19, + Bop + (9, + Var + 4, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))), + Var 6), + Bop + (13, + Var 6, + Var 4)), + Var 26), + Bop + (53, Var 26, + Bop + (17, + Var 8, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0))))), + Var 106), + Bop + (213, Var 106, + Bop + (71, + Bop + (35, + Bop + (17, + Var 8, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0))), + Bop + (11, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0)), + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)))), + Bop + (23, + Bop + (11, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0)), + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))), + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))))), + Bop + (3835, + Bop + (1917, Var 958, + Bop + (639, + Bop + (319, + Bop + (159, + Bop + (79, + Bop + (39, + Bop + (19, + Bop + (9, + Var + 4, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))), + Var 6), + Bop + (13, + Var 6, + Var 4)), + Var 26), + Bop + (53, Var 26, + Bop + (17, + Var 8, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0))))), + Var 106), + Bop + (213, Var 106, + Bop + (71, + Bop + (35, + Bop + (17, + Var 8, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0))), + Bop + (11, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0)), + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)))), + Bop + (23, + Bop + (11, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0)), + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))), + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2)))))), + Var 1278)))))), Var 621378))), + Var 11184810), + Bop (22369621, Var 11184810, Var 7456540)), Var 44739242), + Bop + (89478485, Var 44739242, + Bop + (29826161, Var 14913080, + Bop + (9942053, Var 4971026, + Bop (3314017, Var 1657008, Var 1104672))))), + Var 178956970), + Bop + (357913941, Var 178956970, + Bop + (119304647, + Bop + (59652323, + Bop + (29826161, Var 14913080, + Bop + (9942053, Var 4971026, + Bop (3314017, Var 1657008, Var 1104672))), + Bop + (19884107, + Bop + (9942053, Var 4971026, + Bop (3314017, Var 1657008, Var 1104672)), + Bop + (6628035, Bop (3314017, Var 1657008, Var 1104672), + Bop (2209345, Var 1104672, Var 736448)))), + Bop + (39768215, + Bop + (19884107, + Bop + (9942053, Var 4971026, + Bop (3314017, Var 1657008, Var 1104672)), + Bop + (6628035, Bop (3314017, Var 1657008, Var 1104672), + Bop (2209345, Var 1104672, Var 736448))), + Bop + (13256071, + Bop + (6628035, Bop (3314017, Var 1657008, Var 1104672), + Bop (2209345, Var 1104672, Var 736448)), Var 4418690))))), + Var 715827882) + +> type C = + new: x: string -> C + override ToString: unit -> string +val c1: C = +val csA: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] +val csB: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] +val csC: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] + +> exception Abc + +> exception AbcInt of int + +> exception AbcString of string + +> exception AbcExn of exn list + +> exception AbcException of System.Exception list + +> val exA1: exn = Abc +val exA2: exn = AbcInt 2 +val exA3: exn = AbcString "3" +val exA4: exn = AbcExn [Abc; AbcInt 2; AbcString "3"] +val exA5: exn = AbcException [AbcExn [Abc; AbcInt 2; AbcString "3"]] +exception Ex0 +exception ExUnit of unit +exception ExUnits of unit * unit +exception ExUnitOption of unit option +val ex0: exn = Ex0 +val exU: exn = ExUnit () +val exUs: exn = ExUnits ((), ()) +val exUSome: exn = ExUnitOption (Some ()) +val exUNone: exn = ExUnitOption None +type 'a T4063 = | AT4063 of 'a + +> val valAT3063_12: int T4063 = AT4063 12 + +> val valAT3063_True: bool T4063 = AT4063 true + +> val valAT3063_text: string T4063 = AT4063 "text" + +> val valAT3063_null: System.Object T4063 = AT4063 null + +> type M4063<'a> = + new: x: 'a -> M4063<'a> + +> val v4063: M4063 + +> type Taaaaa<'a> = + new: unit -> Taaaaa<'a> + +> type Taaaaa2<'a> = + inherit Taaaaa<'a> + new: unit -> Taaaaa2<'a> + member M: unit -> Taaaaa2<'a> + +> type Tbbbbb<'a> = + new: x: 'a -> Tbbbbb<'a> + member M: unit -> 'a + +> type Tbbbbb2 = + inherit Tbbbbb + new: x: string -> Tbbbbb2 + +> val it: (unit -> string) = + +> module RepeatedModule = + val repeatedByteLiteral: byte[] = [|12uy; 13uy; 14uy|] + +> module RepeatedModule = + val repeatedByteLiteral: byte[] = [|12uy; 13uy; 14uy|] + +> val it: string = "Check #help" + +> + F# Interactive directives: + + #r "file.dll";; // Reference (dynamically load) the given DLL + #i "package source uri";; // Include package source uri when searching for packages + #I "path";; // Add the given search path for referenced DLLs + #load "file.fs" ...;; // Load the given file(s) as if compiled and referenced + #time ["on"|"off"];; // Toggle timing on/off + #help;; // Display help + #r "nuget:FSharp.Data, 3.1.2";; // Load Nuget Package 'FSharp.Data' version '3.1.2' + #r "nuget:FSharp.Data";; // Load Nuget Package 'FSharp.Data' with the highest version + #quit;; // Exit + + F# Interactive command line options: + + + +> val it: string = "Check #time on and then off" + +> +--> Timing now on + +> +--> Timing now off + +> val it: string = "Check #unknown command" + +> val it: string = + "Check #I with a known directory (to avoid a warning, which includes the location of this file, which is fragile...)" + +> +--> Added '/' to library include path + +> type internal T1 = + | A + | B + +> type internal T2 = + { x: int } + +> type internal T3 + +> type internal T4 = + new: unit -> T4 + +> type T1 = + internal | A + | B + +> type T2 = + internal { x: int } + +> type private T1 = + | A + | B + +> type private T2 = + { x: int } + +> type T1 = + private | A + | B + +> type T2 = + private { x: int } + +> type internal T1 = + private | A + | B + +> type internal T2 = + private { x: int } + +> type private T3 + +> type private T4 = + new: unit -> T4 + +> exception X1 of int + +> exception private X2 of int + +> exception internal X3 of int + +> type T0 = + new: unit -> T0 +type T1Post<'a> = + new: unit -> T1Post<'a> +type 'a T1Pre = + new: unit -> 'a T1Pre + +> type T0 with + member M: unit -> T0 list +type T0 with + member P: T0 * T0 +type T0 with + member E: IEvent + +> type T1Post<'a> with + member M: unit -> T1Post<'a> list +type T1Post<'a> with + member P: T1Post<'a> * T1Post<'a> +type T1Post<'a> with + member E: IEvent + +> type 'a T1Pre with + member M: unit -> 'a T1Pre list +type 'a T1Pre with + member P: 'a T1Pre * 'a T1Pre +type 'a T1Pre with + member E: IEvent + +> type T1Post<'a> with + member M: unit -> T1Post<'a> list +type T1Post<'a> with + member P: T1Post<'a> * T1Post<'a> +type T1Post<'a> with + member E: IEvent + +> type 'a T1Pre with + member M: unit -> 'a T1Pre list +type 'a T1Pre with + member P: 'a T1Pre * 'a T1Pre +type 'a T1Pre with + member E: IEvent + +> type r = + { + f0: int + f1: int + f2: int + f3: int + f4: int + f5: int + f6: int + f7: int + f8: int + f9: int + } +val r10: r = { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 } +val r10s: r[] = + [|{ f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }|] +val r10s': string * r[] = + ("one extra node", + [|{ f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }|]) + +> val x1564_A1: int = 1 + + +--> Added '\' to library include path + +val x1564_A2: int = 2 + + +--> Added '\' to library include path + +val x1564_A3: int = 3 + +> type internal Foo2 = + private new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member private Prop3: int + +> module internal InternalM = + val x: int = 1 + type Foo2 = + private new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member private Prop3: int + type private Foo3 = + new: x: int * y: int * z: int -> Foo3 + 3 overloads + member Prop1: int + member Prop2: int + member Prop3: int + type T1 = + | A + | B + type T2 = + { x: int } + type T3 + type T4 = + new: unit -> T4 + type T5 = + | A + | B + type T6 = + { x: int } + type private T7 = + | A + | B + type private T8 = + { x: int } + type T9 = + private | A + | B + type T10 = + private { x: int } + type T11 = + private | A + | B + type T12 = + private { x: int } + type private T13 + type private T14 = + new: unit -> T14 +module internal PrivateM = + val private x: int = 1 + type private Foo2 = + new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member Prop3: int + type T1 = + | A + | B + type T2 = + { x: int } + type T3 + type T4 = + new: unit -> T4 + type T5 = + | A + | B + type T6 = + { x: int } + type private T7 = + | A + | B + type private T8 = + { x: int } + type T9 = + private | A + | B + type T10 = + private { x: int } + type T11 = + private | A + | B + type T12 = + private { x: int } + type private T13 + type private T14 = + new: unit -> T14 + +> val it: seq = + seq + [(43, "10/28/2008", 1); (46, "11/18/2008", 1); (56, "1/27/2009", 2); + (58, "2/10/2009", 1)] + +> module Test4343a = + val mk: i: int -> string + val x100: string = + "0123456789012345678901234567890123456789012345678901234567890"+[39 chars] + val x90: string = + "0123456789012345678901234567890123456789012345678901234567890"+[29 chars] + val x80: string = + "0123456789012345678901234567890123456789012345678901234567890"+[19 chars] + val x75: string = + "0123456789012345678901234567890123456789012345678901234567890"+[14 chars] + val x74: string = + "0123456789012345678901234567890123456789012345678901234567890"+[13 chars] + val x73: string = + "0123456789012345678901234567890123456789012345678901234567890"+[12 chars] + val x72: string = + "012345678901234567890123456789012345678901234567890123456789012345678901" + val x71: string = + "01234567890123456789012345678901234567890123456789012345678901234567890" + val x70: string = + "0123456789012345678901234567890123456789012345678901234567890123456789" +module Test4343b = + val fA: x: int -> int + val fB: x: 'a -> y: 'a -> 'a list + val gA: (int -> int) + val gB: ('a -> 'a -> 'a list) + val gAB: (int -> int) * ('a -> 'a -> 'a list) + val hB: ('a -> 'a -> 'a list) + val hA: (int -> int) +module Test4343c = + val typename<'a> : string + val typename2<'a> : string * string +module Test4343d = + val xList: int list = [1; 2; 3] + val xArray: int[] = [|1; 2; 3|] + val xString: string = "abcdef" + val xOption: int option = Some 12 + val xArray2: (int * int)[,] = [[(0, 0); (0, 1)] + [(1, 0); (1, 1)]] + val xSeq: seq +module Test4343e = + type C = + new: x: int -> C + val cA: C + val cB: C + val cAB: C * C * C list = + (FSI_0090+Test4343e+C, FSI_0090+Test4343e+C, + [FSI_0090+Test4343e+C; FSI_0090+Test4343e+C]) + type D = + new: x: int -> D + override ToString: unit -> string + val dA: D = D(1) + val dB: D = D(2) + val dAB: D * D * D list = (D(1), D(2), [D(1); D(2)]) + module Generic = + type CGeneric<'a> = + new: x: 'a -> CGeneric<'a> + val cA: C + val cB: C + val cAB: C * C * C list = + (FSI_0090+Test4343e+C, FSI_0090+Test4343e+C, + [FSI_0090+Test4343e+C; FSI_0090+Test4343e+C]) + type D<'a> = + new: x: 'a -> D<'a> + override ToString: unit -> string + val dA: D = D(1) + val dB: D = D(2) + val dAB: D * D * D list = (D(1), D(2), [D(1); D(2)]) + val dC: D = D(True) + val boxed_dABC: obj list = [D(1); D(2); D(True)] +type F1 = + inherit System.Windows.Forms.Form + interface System.IDisposable + val x: F1 + val x2: F1 + member B: unit -> int + member D: x: int -> int + 2 overloads + abstract MMM: bool -> bool + override ToString: unit -> string + static member A: unit -> int + static member C: unit -> int + abstract AAA: int + abstract BBB: bool with set + member D2: int + member E: int + abstract ZZZ: int + static val mutable private sx: F1 + static val mutable private sx2: F1 +[] +type IP = + new: x: int * y: int -> IP + static val mutable private AA: IP +module Regression4643 = + [] + type RIP = + new: x: int -> RIP + static val mutable private y: RIP + [] + type arg_unused_is_RIP = + new: x: RIP -> arg_unused_is_RIP + [] + type arg_used_is_RIP = + new: x: RIP -> arg_used_is_RIP + member X: RIP + [] + type field_is_RIP = + val x: RIP +type Either<'a,'b> = + | This of 'a + | That of 'b +val catch: f: (unit -> 'a) -> Either<'a,(string * string)> +val seqFindIndexFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +val seqFindFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +val seqPickFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +module Regression5218 = + val t1: int = 1 + val t2: int * int = (1, 2) + val t3: int * int * int = (1, 2, 3) + val t4: int * int * int * int = (1, 2, 3, 4) + val t5: int * int * int * int * int = (1, 2, 3, 4, 5) + val t6: int * int * int * int * int * int = (1, 2, 3, 4, 5, 6) + val t7: int * int * int * int * int * int * int = (1, 2, 3, 4, 5, 6, 7) + val t8: int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8) + val t9: int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9) + val t10: int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) + val t11: int * int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11) + val t12: + int * int * int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12) + val t13: + int * int * int * int * int * int * int * int * int * int * int * int * + int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13) + val t14: + int * int * int * int * int * int * int * int * int * int * int * int * + int * int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14) + val t15: + int * int * int * int * int * int * int * int * int * int * int * int * + int * int * int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15) + +> module Regression3739 = + type IB = + abstract AbstractMember: int -> int + type C<'a when 'a :> IB> = + new: unit -> C<'a> + static member StaticMember: x: 'a -> int + +> module Regression3739 = + type IB = + abstract AbstractMember: int -> int + type C<'a when 'a :> IB> = + new: unit -> C<'a> + static member StaticMember: x: 'a -> int + +> module Regression3740 = + type Writer<'a> = + abstract get_path: unit -> string + type MyClass = + interface Writer + val path: string + +> type Regression4319_T2 = + static member (+-+-+) : x: 'a * y: 'b -> string + +> type Regression4319_T0 = + static member (+-+-+) : string + +> type Regression4319_T1 = + static member (+-+-+) : x: 'a -> string + +> type Regression4319_T1b = + static member (+-+-+) : x: 'a -> string + +> type Regression4319_T1c = + static member (+-+-+) : x: ('a * 'b) -> string + +> type Regression4319_T1d = + static member (+-+-+) : x: (int * int) -> string + +> type Regression4319_T3 = + static member (+-+-+) : x: 'a * y: 'b * z: 'c -> string + +> type Regression4319_U1 = + static member (+-+-+) : x: 'a -> moreArgs: 'b -> string + +> type Regression4319_U1b = + static member (+-+-+) : x: 'a -> moreArgs: 'b -> string + +> type Regression4319_U2 = + static member (+-+-+) : x: 'a * y: 'b -> moreArgs: 'c -> string + +> type Regression4319_U3 = + static member (+-+-+) : x: 'a * y: 'b * z: 'c -> moreArgs: 'd -> string + +> type Regression4319_check = + static member (&) : string + static member (&^) : string + static member (@) : string + static member (!=) : string + static member (:=) : string + static member (^) : string + static member (/) : string + static member ($) : string + static member (...@) : string + static member (...!=) : string + static member (.../) : string + static member (...=) : string + static member (...>) : string + static member (...^) : string + static member (...<) : string + static member ( ...* ) : string + static member (...%) : string + static member (=) : string + static member ( ** ) : string + static member (>) : string + static member (<) : string + static member (%) : string + static member ( * ) : string + static member (-) : string + +> Expect ABC = ABC +type Regression4469 = + new: unit -> Regression4469 + member ToString: unit -> string +val r4469: Regression4469 = FSI_0106+Regression4469 +val it: unit = () + +> Expect ABC = ABC +val it: unit = () + +> module Regression1019_short = + val double_nan: float = nan + val double_infinity: float = infinity + val single_nan: float32 = nanf + val single_infinity: float32 = infinityf +module Regression1019_long = + val double_nan: float = nan + val double_infinity: float = infinity + val single_nan: float32 = nanf + val single_infinity: float32 = infinityf + +> val it: int ref = { contents = 1 } + +> val x: int ref = { contents = 1 } +val f: (unit -> int) + +> val it: int = 1 + +> val it: unit = () + +> val it: int = 3 + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: 'a list + +> val it: 'a list list + +> val it: 'a option + +> val it: 'a list * 'b list + +> val it: x: 'a -> 'a + +> val fff: x: 'a -> 'a + +> val it: ('a -> 'a) + +> val note_ExpectDupMethod: string = + "Regression4927: Expect error due to duplicate methods in the "+[20 chars] + +> > val note_ExpectDupProperty: string = + "Regression4927: Expect error due to duplicate properties in t"+[23 chars] + +> > > val it: string = "NOTE: Expect IAPrivate less accessible IBPublic" + +> > val it: string = "NOTE: Expect IAPrivate less accessible IBInternal" + +> > module Regression5265_PriPri = + type private IAPrivate = + abstract P: int + type private IBPrivate = + inherit IAPrivate + abstract Q: int + +> val it: string = "NOTE: Expect IAInternal less accessible IBPublic" + +> > module Regression5265_IntInt = + type internal IAInternal = + abstract P: int + type internal IBInternal = + inherit IAInternal + abstract Q: int + +> module Regression5265_IntPri = + type internal IAInternal = + abstract P: int + type private IBPrivate = + inherit IAInternal + abstract Q: int + +> module Regression5265_PubPub = + type IAPublic = + abstract P: int + type IBPublic = + inherit IAPublic + abstract Q: int + +> module Regression5265_PubInt = + type IAPublic = + abstract P: int + type internal IBInternal = + inherit IAPublic + abstract Q: int + +> module Regression5265_PubPri = + type IAPublic = + abstract P: int + type private IBPrivate = + inherit IAPublic + abstract Q: int + +> val it: string = + "Regression4232: Expect an error about duplicate virtual methods from parent type" + +> > val it: string = + "** Expect AnAxHostSubClass to be accepted. AxHost has a newslot virtual RightToLeft property outscope RightToLeft on Control" + +> type AnAxHostSubClass = + inherit System.Windows.Forms.AxHost + new: x: string -> AnAxHostSubClass + +> val it: string = + "** Expect error because the active pattern result contains free type variables" + +> > val it: string = + "** Expect error because the active pattern result contains free type variables (match value generic)" + +> > val it: string = + "** Expect error because the active pattern result contains free type variables (when active pattern also has parameters)" + +> > val it: string = + "** Expect OK, since error message says constraint should work!" + +> val (|A|B|) : x: int -> Choice + +> val it: string = "** Expect error since active pattern is not a function!" + +> > val it: string = + "** Expect OK since active pattern result is not too generic, typars depend on match val" + +> val (|A|B|) : p: bool -> 'a * 'b -> Choice<'a,'b> + +> val it: string = + "** Expect OK since active pattern result is not too generic, typars depend on parameters" + +> val (|A|B|) : aval: 'a -> bval: 'b -> x: bool -> Choice<'a,'b> + +> val it: string = + "** Expect OK since active pattern result is generic, but it typar from closure, so OK" + +> val outer: x: 'a -> (int -> 'a option) + +> val it: string = + "** Expect OK, BUG 472278: revert unintended breaking change to Active Patterns in F# 3.0" + +> val (|Check1|) : a: int -> int * 'a option + +> > module ReflectionEmit = + type IA = + abstract M: #IB -> int + and IB = + abstract M: #IA -> int + type IA2<'a when 'a :> IB2<'a> and 'a :> IA2<'a>> = + abstract M: int + and IB2<'b when 'b :> IA2<'b> and 'b :> IB2<'b>> = + abstract M: int + +> val it: string = + "Regression_139182: Expect the follow code to be accepted without error" + +> [] +type S = + member TheMethod: unit -> int64 +val theMethod: s: S -> int64 +type T = + new: unit -> T + member Prop5: int64 + static member Prop1: int64 + static member Prop2: int64 + static member Prop3: int64 + static member Prop4: string + +> val it: System.Threading.ThreadLocal list = [0 {IsValueCreated = false; + Values = ?;}] + +> type MyDU = + | Case1 of Val1: int * Val2: string + | Case2 of string * V2: bool * float + | Case3 of int + | Case4 of Item1: bool + | Case5 of bool * string + | Case6 of Val1: int * bool * string + | Case7 of ``Big Name`` : int +val namedFieldVar1: MyDU = Case1 (5, "") +val namedFieldVar2: MyDU = Case7 25 + +> exception MyNamedException1 of Val1: int * Val2: string +exception MyNamedException2 of string * V2: bool * float +exception MyNamedException3 of Data: int +exception MyNamedException4 of bool +exception MyNamedException5 of int * string +exception MyNamedException6 of Val1: int * bool * string * Data8: float +exception MyNamedException7 of ``Big Named Field`` : int +val namedEx1: exn = MyNamedException1 (5, "") +val namedEx2: exn = MyNamedException7 25 + +> type optionRecord = + { x: int option } +val x: optionRecord = { x = None } + +> type optionRecord = + { x: obj } +val x: optionRecord = { x = null } + +> type RecordWithMembers = + { x: obj } + member Method: unit -> int + member Property: int + +> type UnionWithMembers = + | Case1 + | Case2 of int + member Method: unit -> int + member Property: int + +> type OneFieldRecordNoXmlDoc = + { OneField: obj } + +> type OneFieldRecordXmlDoc = + { + OneField: obj + } + +> type TwoFieldRecordNoXmlDoc = + { + TwoFields1: obj + TwoFields2: obj + } + +> type TwoFieldRecordXmlDoc = + { + TwoFields1: obj + TwoFields2: obj + } + +> type Int32 with + member ExtrinsicExtensionProperty: int +type Int32 with + member ExtrinsicExtensionMethod: unit -> int + +> val ``value with spaces in name`` : bool = true + +> val functionWhichTakesLongNameMixedParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int * + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int + -> ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int * + dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesLongNameTupledParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int * + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int * + ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int * + ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesLongNameCurriedParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int + -> bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int + -> cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int + -> dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesMixedLengthCurriedParametersA: + a: 'a -> b: 'b -> c: 'c -> ddddddddddddddddddddddddddddddddddddddddddddd: 'd + -> int + +> val functionWhichTakesMixedLengthCurriedParametersB: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: 'a -> b: 'b -> c: 'c -> d: 'd -> int + +> val f: ``parameter with spaces in name`` : int -> int + +> val functionWhichTakesAParameterPeeciselyPlusButNotOpAddition: + ``+`` : (int -> int -> int) -> int + +> val functionWhichTakesAParameterOpAddition: (+) : (int -> int -> int) -> int + +> val functionWhichTakesAParameterCalled_land: + ``land`` : (int -> int -> int) -> int + +> type RecordWithStrangeNames = + { + ``funky name`` : obj + op_Addition: obj + ``+`` : obj + ``land`` : obj + ``base`` : obj + } + +> type UnionWithSpacesInNamesOfCases = + | ``Funky name`` + | ``Funky name 2`` + +> type ``Type with spaces in name`` = + | A + | B + +> type op_Addition = + | A + | B + +> type ``land`` = + | A + | B + +> module ``Module with spaces in name`` = + val x: int = 1 + +> module op_Addition = + val x: int = 1 + +> module ``land`` = + val x: int = 1 + +> val ``+`` : x: 'a -> y: 'b -> int + +> val (+) : x: int -> y: int -> int + +> val ``base`` : int = 2 + +> val (mod) : int = 2 + +> val ``or`` : int = 2 + +> val ``land`` : int = 2 + +> val ``.ctor`` : int = 2 + +> val ``.cctor`` : int = 2 + +> [] +val SomeLiteralWithASomewhatLongName: string + = "SomeVeryLongLiteralValueWithLotsOfCharacters" +[] +val SomeLiteralWithASomewhatLongName2: string + = + "SomeVeryLongLiteralValueWithLotsOfCharactersSomeVeryLongLiteralValueWithLotsOfCharactersSomeVeryLongLiteralValueWithLotsOfCharacters" +[] +val ShortName: string = "hi" + +> val it: System.DayOfWeek = Tuesday + +> val internal f: unit -> int + +> val it: int = 1 + +> type internal CInternal = + new: unit -> CInternal + +> val it: unit = () + +> type internal CPublic = + new: unit -> CPublic + member MInternal: unit -> unit + +> val it: unit = () + +> type internal CPublic2 = + new: unit -> CPublic2 + member MPublic: unit -> int + +> val it: int = 1 + +> val inst1: TestLoadFile.ClassInFile1 + +> val inst2: TestLoadFile2.ClassInFile2 + +> > > diff --git a/tests/fsharp/core/printing/output.off.stderr.txt b/tests/fsharp/core/printing/output.off.stderr.txt new file mode 100644 index 00000000000..6926dcc9f34 --- /dev/null +++ b/tests/fsharp/core/printing/output.off.stderr.txt @@ -0,0 +1,348 @@ + + #blaaaaaa // blaaaaaa is not a known command;; + ^^^^^^^^^ + +stdin(219,1): warning FS3353: Invalid directive '#blaaaaaa ' + + + type Regression4319_T0 = static member (+-+-+) = "0 arguments";; + -----------------------------------------^^^^^ + +stdin(571,42): warning FS1172: Infix operator member '+-+-+' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1 = static member (+-+-+) x = "1 argument";; + -----------------------------------------^^^^^ + +stdin(572,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1b = static member (+-+-+) (x) = "1 (argument) [brackets make no diff]";; + -----------------------------------------^^^^^ + +stdin(573,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1c = static member (+-+-+) x = let a,b = x in "1 argument, tuple typed from RHS. Still not OK";; + -----------------------------------------^^^^^ + +stdin(574,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1d = static member (+-+-+) (x:int*int) = "1 argument, tuple typed from LHS. Still not OK";; + -----------------------------------------^^^^^ + +stdin(575,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T3 = static member (+-+-+) (x,y,z) = "3 arguments";; + -----------------------------------------^^^^^ + +stdin(577,42): warning FS1173: Infix operator member '+-+-+' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1 = static member (+-+-+) x moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(578,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1 = static member (+-+-+) x moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(578,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1b = static member (+-+-+) (x) moreArgs = "1 (argument) [brackets make no diff] and further args";; + -----------------------------------------^^^^^ + +stdin(579,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1b = static member (+-+-+) (x) moreArgs = "1 (argument) [brackets make no diff] and further args";; + -----------------------------------------^^^^^ + +stdin(579,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U2 = static member (+-+-+) (x,y) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(580,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U3 = static member (+-+-+) (x,y,z) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(581,42): warning FS1173: Infix operator member '+-+-+' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U3 = static member (+-+-+) (x,y,z) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(581,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (:=) = "COLON_EQUALS" + -------------------^^ + +stdin(584,20): warning FS1172: Infix operator member ':=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (:=) = "COLON_EQUALS" + -------------------^^ + +stdin(584,20): warning FS0086: The name '(:=)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (&) = "AMP" + -------------------^ + +stdin(588,20): warning FS1172: Infix operator member '&' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (&) = "AMP" + -------------------^ + +stdin(588,20): warning FS0086: The name '(&)' should not be used as a member name. If defining a static member for use from other CLI languages then use the name 'op_Amp' instead. + + + static member (&^) = "AMP_AMP" + -------------------^^ + +stdin(589,20): warning FS1172: Infix operator member '&^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (=) = "EQUALS" + -------------------^ + +stdin(590,20): warning FS1172: Infix operator member '=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (=) = "EQUALS" + -------------------^ + +stdin(590,20): warning FS0086: The name '(=)' should not be used as a member name. To define equality semantics for a type, override the 'Object.Equals' member. If defining a static member for use from other CLI languages then use the name 'op_Equality' instead. + + + static member (!=) = "INFIX_COMPARE_OP" + -------------------^^ + +stdin(592,20): warning FS1172: Infix operator member '!=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...=) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(596,20): warning FS1172: Infix operator member '...=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...!=) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^^ + +stdin(597,20): warning FS1172: Infix operator member '...!=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...<) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(598,20): warning FS1172: Infix operator member '...<' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...>) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(599,20): warning FS1172: Infix operator member '...>' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ($) = "DOLLAR" + -------------------^ + +stdin(601,20): warning FS1172: Infix operator member '$' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (<) = "LESS" + -------------------^ + +stdin(602,20): warning FS1172: Infix operator member '<' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (<) = "LESS" + -------------------^ + +stdin(602,20): warning FS0086: The name '(<)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name 'op_LessThan' instead. + + + static member (>) = "GREATER" + -------------------^ + +stdin(603,20): warning FS1172: Infix operator member '>' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (>) = "GREATER" + -------------------^ + +stdin(603,20): warning FS0086: The name '(>)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name 'op_GreaterThan' instead. + + + static member (@) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(604,20): warning FS1172: Infix operator member '@' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (@) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(604,20): warning FS0086: The name '(@)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (^) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(605,20): warning FS1172: Infix operator member '^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (^) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(605,20): warning FS0086: The name '(^)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (...@) = "INFIX_AT_HAT_OP" // with $. prefix + -------------------^^^^ + +stdin(606,20): warning FS1172: Infix operator member '...@' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...^) = "INFIX_AT_HAT_OP" // with $. prefix + -------------------^^^^ + +stdin(607,20): warning FS1172: Infix operator member '...^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (%) = "PERCENT_OP" + -------------------^ + +stdin(608,20): warning FS1172: Infix operator member '%' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (-) = "MINUS" + -------------------^ + +stdin(610,20): warning FS1172: Infix operator member '-' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( * ) = "STAR" + --------------------^ + +stdin(611,21): warning FS1172: Infix operator member '*' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (/) = "INFIX_STAR_DIV_MOD_OP" + -------------------^ + +stdin(613,20): warning FS1172: Infix operator member '/' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ...* ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(615,21): warning FS1172: Infix operator member '...*' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( .../ ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(616,21): warning FS1172: Infix operator member '.../' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ...% ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(617,21): warning FS1172: Infix operator member '...%' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ** ) = "INFIX_STAR_STAR_OP" + --------------------^^ + +stdin(618,21): warning FS1172: Infix operator member '**' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + member this.ToString() = "ABC" + ----------------^^^^^^^^ + +stdin(623,17): warning FS0864: This new member hides the abstract member 'System.Object.ToString() : string'. Rename the member or use 'override' instead. + + + let x,f = it, (fun () -> !it);; // this will read from the static storage for 'it' + -------------------------^ + +stdin(643,26): info FS3370: The use of '!' from the F# library is deprecated. See https://aka.ms/fsharp-refcell-ops. For example, please change '!cell' to 'cell.Value'. + + + x := 3;; + --^^ + +stdin(645,3): info FS3370: The use of ':=' from the F# library is deprecated. See https://aka.ms/fsharp-refcell-ops. For example, please change 'cell := expr' to 'cell.Value <- expr'. + + + member this.M() = "string" + ----------------^ + +stdin(764,17): error FS0438: Duplicate method. The method 'M' has the same name and signature as another method in type 'ExpectDupMethod'. + + + member this.P = "string" + ----------------^ + +stdin(771,17): error FS0438: Duplicate method. The method 'get_P' has the same name and signature as another method in type 'ExpectDupProperty'. + + + type public IBPublic = interface inherit IAPrivate abstract Q : int end + ------------------^^^^^^^^ + +stdin(778,19): error FS0410: The type 'IAPrivate' is less accessible than the value, member or type 'IBPublic' it is used in. + + + type internal IBInternal = interface inherit IAPrivate abstract Q : int end + ------------------^^^^^^^^^^ + +stdin(783,19): error FS0410: The type 'IAPrivate' is less accessible than the value, member or type 'IBInternal' it is used in. + + + type public IBPublic = interface inherit IAInternal abstract Q : int end + ------------------^^^^^^^^ + +stdin(792,19): error FS0410: The type 'IAInternal' is less accessible than the value, member or type 'IBPublic' it is used in. + + + override x.M(a:string) = 1 + -------------------^ + +stdin(824,20): error FS0361: The override 'M: string -> int' implements more than one abstract slot, e.g. 'abstract Regression4232.D.M: 'U -> int' and 'abstract Regression4232.D.M: 'T -> int' + + + let (|A|B|) (x:int) = A x;; + -----^^^^^ + +stdin(832,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) (x:'a) = A x;; + -----^^^^^ + +stdin(835,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) (p:'a) (x:int) = A p;; + -----^^^^^ + +stdin(838,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) = failwith "" : Choice;; + -----^^^^^ + +stdin(844,6): error FS1209: Active pattern '|A|B|' is not a function + diff --git a/tests/fsharp/core/printing/output.off.stdout.txt b/tests/fsharp/core/printing/output.off.stdout.txt new file mode 100644 index 00000000000..adf47672324 --- /dev/null +++ b/tests/fsharp/core/printing/output.off.stdout.txt @@ -0,0 +1,1764 @@ + +> val it: unit = () + +> val repeatId: string + +> val repeatId: string + +namespace FSI_0005 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile1 = + new: unit -> ClassInFile1 + +namespace FSI_0006 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile1 = + new: unit -> ClassInFile1 + +namespace FSI_0006 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile2 = + new: unit -> ClassInFile2 + +> val x1: seq +val x2: seq +val x3: seq +val f1: System.Windows.Forms.Form +val fs: System.Windows.Forms.Form[] +val xs: string list +val xa: string[] +val xa2: string[,] +val sxs0: Set + +> val sxs1: Set + +> val sxs2: Set + +> val sxs3: Set + +> val sxs4: Set + +> val sxs200: Set + +> val msxs0: Map + +> val msxs1: Map + +> val msxs2: Map + +> val msxs3: Map + +> val msxs4: Map + +> val msxs200: Map + +> module M = + val a: string + val b: + (seq * seq * seq * System.Windows.Forms.Form) option * + (string list * string list * string[,]) option +type T = + new: a: int * b: int -> T + member AMethod: x: int -> int + static member StaticMethod: x: int -> int + member AProperty: int + static member StaticProperty: int +val f_as_method: x: int -> int +val f_as_thunk: (int -> int) +val refCell: string ref +module D1 = + val words: System.Collections.Generic.IDictionary + val words2000: System.Collections.Generic.IDictionary + +> > module D2 = + val words: IDictionary + val words2000: IDictionary +val opt1: 'a option +val opt1b: int option +val opt4: 'a option option option option +val opt4b: int option option option option +val opt5: int list option option option option option list +val mkStr: n: int -> string +val strs: string[] +val str7s: string[] +val grids: string[,] + +> type tree = + | L + | N of tree list +val mkT: w: int -> d: int -> tree +val tree: w: int -> d: int -> tree + +> [Building 2 4...done] +val tree_2_4: tree + +> [Building 2 6...done] +val tree_2_6: tree + +> [Building 2 8...done] +val tree_2_8: tree + +> [Building 2 10...done] +val tree_2_10: tree + +> [Building 2 12...done] +val tree_2_12: tree + +> [Building 2 14...done] +val tree_2_14: tree + +> [Building 3 8...done] +val tree_3_8: tree + +> [Building 4 8...done] +val tree_4_8: tree + +> [Building 5 8...done] +val tree_5_8: tree + +> [Building 6 8...done] +val tree_6_8: tree + +> [Building 5 3...done] +val tree_5_3: tree + +> > type X = + | Var of int + | Bop of int * X * X +val generate: x: int -> X + +> val exps: X list + +> module Exprs = + val x1: X + val x2: X + val x3: X + val x4: X + val x5: X + val x6: X + val x7: X + val x8: X + val x9: X + val x10: X + val x11: X + +> type C = + new: x: string -> C + override ToString: unit -> string +val c1: C +val csA: C[] +val csB: C[] +val csC: C[] + +> exception Abc + +> exception AbcInt of int + +> exception AbcString of string + +> exception AbcExn of exn list + +> exception AbcException of System.Exception list + +> val exA1: exn +val exA2: exn +val exA3: exn +val exA4: exn +val exA5: exn +exception Ex0 +exception ExUnit of unit +exception ExUnits of unit * unit +exception ExUnitOption of unit option +val ex0: exn +val exU: exn +val exUs: exn +val exUSome: exn +val exUNone: exn +type 'a T4063 = | AT4063 of 'a + +> val valAT3063_12: int T4063 + +> val valAT3063_True: bool T4063 + +> val valAT3063_text: string T4063 + +> val valAT3063_null: System.Object T4063 + +> type M4063<'a> = + new: x: 'a -> M4063<'a> + +> val v4063: M4063 + +> type Taaaaa<'a> = + new: unit -> Taaaaa<'a> + +> type Taaaaa2<'a> = + inherit Taaaaa<'a> + new: unit -> Taaaaa2<'a> + member M: unit -> Taaaaa2<'a> + +> type Tbbbbb<'a> = + new: x: 'a -> Tbbbbb<'a> + member M: unit -> 'a + +> type Tbbbbb2 = + inherit Tbbbbb + new: x: string -> Tbbbbb2 + +> val it: (unit -> string) = + +> module RepeatedModule = + val repeatedByteLiteral: byte[] + +> module RepeatedModule = + val repeatedByteLiteral: byte[] + +> val it: string = "Check #help" + +> + F# Interactive directives: + + #r "file.dll";; // Reference (dynamically load) the given DLL + #i "package source uri";; // Include package source uri when searching for packages + #I "path";; // Add the given search path for referenced DLLs + #load "file.fs" ...;; // Load the given file(s) as if compiled and referenced + #time ["on"|"off"];; // Toggle timing on/off + #help;; // Display help + #r "nuget:FSharp.Data, 3.1.2";; // Load Nuget Package 'FSharp.Data' version '3.1.2' + #r "nuget:FSharp.Data";; // Load Nuget Package 'FSharp.Data' with the highest version + #quit;; // Exit + + F# Interactive command line options: + + + +> val it: string = "Check #time on and then off" + +> +--> Timing now on + +> +--> Timing now off + +> val it: string = "Check #unknown command" + +> val it: string = + "Check #I with a known directory (to avoid a warning, which includes the location of this file, which is fragile...)" + +> +--> Added '/' to library include path + +> type internal T1 = + | A + | B + +> type internal T2 = + { x: int } + +> type internal T3 + +> type internal T4 = + new: unit -> T4 + +> type T1 = + internal | A + | B + +> type T2 = + internal { x: int } + +> type private T1 = + | A + | B + +> type private T2 = + { x: int } + +> type T1 = + private | A + | B + +> type T2 = + private { x: int } + +> type internal T1 = + private | A + | B + +> type internal T2 = + private { x: int } + +> type private T3 + +> type private T4 = + new: unit -> T4 + +> exception X1 of int + +> exception private X2 of int + +> exception internal X3 of int + +> type T0 = + new: unit -> T0 +type T1Post<'a> = + new: unit -> T1Post<'a> +type 'a T1Pre = + new: unit -> 'a T1Pre + +> type T0 with + member M: unit -> T0 list +type T0 with + member P: T0 * T0 +type T0 with + member E: IEvent + +> type T1Post<'a> with + member M: unit -> T1Post<'a> list +type T1Post<'a> with + member P: T1Post<'a> * T1Post<'a> +type T1Post<'a> with + member E: IEvent + +> type 'a T1Pre with + member M: unit -> 'a T1Pre list +type 'a T1Pre with + member P: 'a T1Pre * 'a T1Pre +type 'a T1Pre with + member E: IEvent + +> type T1Post<'a> with + member M: unit -> T1Post<'a> list +type T1Post<'a> with + member P: T1Post<'a> * T1Post<'a> +type T1Post<'a> with + member E: IEvent + +> type 'a T1Pre with + member M: unit -> 'a T1Pre list +type 'a T1Pre with + member P: 'a T1Pre * 'a T1Pre +type 'a T1Pre with + member E: IEvent + +> type r = + { + f0: int + f1: int + f2: int + f3: int + f4: int + f5: int + f6: int + f7: int + f8: int + f9: int + } +val r10: r +val r10s: r[] +val r10s': string * r[] + +> val x1564_A1: int + + +--> Added '\' to library include path + +val x1564_A2: int + + +--> Added '\' to library include path + +val x1564_A3: int + +> type internal Foo2 = + private new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member private Prop3: int + +> module internal InternalM = + val x: int + type Foo2 = + private new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member private Prop3: int + type private Foo3 = + new: x: int * y: int * z: int -> Foo3 + 3 overloads + member Prop1: int + member Prop2: int + member Prop3: int + type T1 = + | A + | B + type T2 = + { x: int } + type T3 + type T4 = + new: unit -> T4 + type T5 = + | A + | B + type T6 = + { x: int } + type private T7 = + | A + | B + type private T8 = + { x: int } + type T9 = + private | A + | B + type T10 = + private { x: int } + type T11 = + private | A + | B + type T12 = + private { x: int } + type private T13 + type private T14 = + new: unit -> T14 +module internal PrivateM = + val private x: int + type private Foo2 = + new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member Prop3: int + type T1 = + | A + | B + type T2 = + { x: int } + type T3 + type T4 = + new: unit -> T4 + type T5 = + | A + | B + type T6 = + { x: int } + type private T7 = + | A + | B + type private T8 = + { x: int } + type T9 = + private | A + | B + type T10 = + private { x: int } + type T11 = + private | A + | B + type T12 = + private { x: int } + type private T13 + type private T14 = + new: unit -> T14 + +> val it: seq = + seq + [(43, "10/28/2008", 1); (46, "11/18/2008", 1); (56, "1/27/2009", 2); + (58, "2/10/2009", 1)] + +> module Test4343a = + val mk: i: int -> string + val x100: string + val x90: string + val x80: string + val x75: string + val x74: string + val x73: string + val x72: string + val x71: string + val x70: string +module Test4343b = + val fA: x: int -> int + val fB: x: 'a -> y: 'a -> 'a list + val gA: (int -> int) + val gB: ('a -> 'a -> 'a list) + val gAB: (int -> int) * ('a -> 'a -> 'a list) + val hB: ('a -> 'a -> 'a list) + val hA: (int -> int) +module Test4343c = + val typename<'a> : string + val typename2<'a> : string * string +module Test4343d = + val xList: int list + val xArray: int[] + val xString: string + val xOption: int option + val xArray2: (int * int)[,] + val xSeq: seq +module Test4343e = + type C = + new: x: int -> C + val cA: C + val cB: C + val cAB: C * C * C list + type D = + new: x: int -> D + override ToString: unit -> string + val dA: D + val dB: D + val dAB: D * D * D list + module Generic = + type CGeneric<'a> = + new: x: 'a -> CGeneric<'a> + val cA: C + val cB: C + val cAB: C * C * C list + type D<'a> = + new: x: 'a -> D<'a> + override ToString: unit -> string + val dA: D + val dB: D + val dAB: D * D * D list + val dC: D + val boxed_dABC: obj list +type F1 = + inherit System.Windows.Forms.Form + interface System.IDisposable + val x: F1 + val x2: F1 + member B: unit -> int + member D: x: int -> int + 2 overloads + abstract MMM: bool -> bool + override ToString: unit -> string + static member A: unit -> int + static member C: unit -> int + abstract AAA: int + abstract BBB: bool with set + member D2: int + member E: int + abstract ZZZ: int + static val mutable private sx: F1 + static val mutable private sx2: F1 +[] +type IP = + new: x: int * y: int -> IP + static val mutable private AA: IP +module Regression4643 = + [] + type RIP = + new: x: int -> RIP + static val mutable private y: RIP + [] + type arg_unused_is_RIP = + new: x: RIP -> arg_unused_is_RIP + [] + type arg_used_is_RIP = + new: x: RIP -> arg_used_is_RIP + member X: RIP + [] + type field_is_RIP = + val x: RIP +type Either<'a,'b> = + | This of 'a + | That of 'b +val catch: f: (unit -> 'a) -> Either<'a,(string * string)> +val seqFindIndexFailure: Either +val seqFindFailure: Either +val seqPickFailure: Either +module Regression5218 = + val t1: int + val t2: int * int + val t3: int * int * int + val t4: int * int * int * int + val t5: int * int * int * int * int + val t6: int * int * int * int * int * int + val t7: int * int * int * int * int * int * int + val t8: int * int * int * int * int * int * int * int + val t9: int * int * int * int * int * int * int * int * int + val t10: int * int * int * int * int * int * int * int * int * int + val t11: int * int * int * int * int * int * int * int * int * int * int + val t12: + int * int * int * int * int * int * int * int * int * int * int * int + val t13: + int * int * int * int * int * int * int * int * int * int * int * int * + int + val t14: + int * int * int * int * int * int * int * int * int * int * int * int * + int * int + val t15: + int * int * int * int * int * int * int * int * int * int * int * int * + int * int * int + +> module Regression3739 = + type IB = + abstract AbstractMember: int -> int + type C<'a when 'a :> IB> = + new: unit -> C<'a> + static member StaticMember: x: 'a -> int + +> module Regression3739 = + type IB = + abstract AbstractMember: int -> int + type C<'a when 'a :> IB> = + new: unit -> C<'a> + static member StaticMember: x: 'a -> int + +> module Regression3740 = + type Writer<'a> = + abstract get_path: unit -> string + type MyClass = + interface Writer + val path: string + +> type Regression4319_T2 = + static member (+-+-+) : x: 'a * y: 'b -> string + +> type Regression4319_T0 = + static member (+-+-+) : string + +> type Regression4319_T1 = + static member (+-+-+) : x: 'a -> string + +> type Regression4319_T1b = + static member (+-+-+) : x: 'a -> string + +> type Regression4319_T1c = + static member (+-+-+) : x: ('a * 'b) -> string + +> type Regression4319_T1d = + static member (+-+-+) : x: (int * int) -> string + +> type Regression4319_T3 = + static member (+-+-+) : x: 'a * y: 'b * z: 'c -> string + +> type Regression4319_U1 = + static member (+-+-+) : x: 'a -> moreArgs: 'b -> string + +> type Regression4319_U1b = + static member (+-+-+) : x: 'a -> moreArgs: 'b -> string + +> type Regression4319_U2 = + static member (+-+-+) : x: 'a * y: 'b -> moreArgs: 'c -> string + +> type Regression4319_U3 = + static member (+-+-+) : x: 'a * y: 'b * z: 'c -> moreArgs: 'd -> string + +> type Regression4319_check = + static member (&) : string + static member (&^) : string + static member (@) : string + static member (!=) : string + static member (:=) : string + static member (^) : string + static member (/) : string + static member ($) : string + static member (...@) : string + static member (...!=) : string + static member (.../) : string + static member (...=) : string + static member (...>) : string + static member (...^) : string + static member (...<) : string + static member ( ...* ) : string + static member (...%) : string + static member (=) : string + static member ( ** ) : string + static member (>) : string + static member (<) : string + static member (%) : string + static member ( * ) : string + static member (-) : string + +> Expect ABC = ABC +type Regression4469 = + new: unit -> Regression4469 + member ToString: unit -> string +val r4469: Regression4469 +val it: unit + +> Expect ABC = ABC +val it: unit = () + +> module Regression1019_short = + val double_nan: float + val double_infinity: float + val single_nan: float32 + val single_infinity: float32 +module Regression1019_long = + val double_nan: float + val double_infinity: float + val single_nan: float32 + val single_infinity: float32 + +> val it: int ref = { contents = 1 } + +> val x: int ref +val f: (unit -> int) + +> val it: int = 1 + +> val it: unit = () + +> val it: int = 3 + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: 'a list + +> val it: 'a list list + +> val it: 'a option + +> val it: 'a list * 'b list + +> val it: x: 'a -> 'a + +> val fff: x: 'a -> 'a + +> val it: ('a -> 'a) + +> val note_ExpectDupMethod: string + +> > val note_ExpectDupProperty: string + +> > > val it: string = "NOTE: Expect IAPrivate less accessible IBPublic" + +> > val it: string = "NOTE: Expect IAPrivate less accessible IBInternal" + +> > module Regression5265_PriPri = + type private IAPrivate = + abstract P: int + type private IBPrivate = + inherit IAPrivate + abstract Q: int + +> val it: string = "NOTE: Expect IAInternal less accessible IBPublic" + +> > module Regression5265_IntInt = + type internal IAInternal = + abstract P: int + type internal IBInternal = + inherit IAInternal + abstract Q: int + +> module Regression5265_IntPri = + type internal IAInternal = + abstract P: int + type private IBPrivate = + inherit IAInternal + abstract Q: int + +> module Regression5265_PubPub = + type IAPublic = + abstract P: int + type IBPublic = + inherit IAPublic + abstract Q: int + +> module Regression5265_PubInt = + type IAPublic = + abstract P: int + type internal IBInternal = + inherit IAPublic + abstract Q: int + +> module Regression5265_PubPri = + type IAPublic = + abstract P: int + type private IBPrivate = + inherit IAPublic + abstract Q: int + +> val it: string = + "Regression4232: Expect an error about duplicate virtual methods from parent type" + +> > val it: string = + "** Expect AnAxHostSubClass to be accepted. AxHost has a newslot virtual RightToLeft property outscope RightToLeft on Control" + +> type AnAxHostSubClass = + inherit System.Windows.Forms.AxHost + new: x: string -> AnAxHostSubClass + +> val it: string = + "** Expect error because the active pattern result contains free type variables" + +> > val it: string = + "** Expect error because the active pattern result contains free type variables (match value generic)" + +> > val it: string = + "** Expect error because the active pattern result contains free type variables (when active pattern also has parameters)" + +> > val it: string = + "** Expect OK, since error message says constraint should work!" + +> val (|A|B|) : x: int -> Choice + +> val it: string = "** Expect error since active pattern is not a function!" + +> > val it: string = + "** Expect OK since active pattern result is not too generic, typars depend on match val" + +> val (|A|B|) : p: bool -> 'a * 'b -> Choice<'a,'b> + +> val it: string = + "** Expect OK since active pattern result is not too generic, typars depend on parameters" + +> val (|A|B|) : aval: 'a -> bval: 'b -> x: bool -> Choice<'a,'b> + +> val it: string = + "** Expect OK since active pattern result is generic, but it typar from closure, so OK" + +> val outer: x: 'a -> (int -> 'a option) + +> val it: string = + "** Expect OK, BUG 472278: revert unintended breaking change to Active Patterns in F# 3.0" + +> val (|Check1|) : a: int -> int * 'a option + +> > module ReflectionEmit = + type IA = + abstract M: #IB -> int + and IB = + abstract M: #IA -> int + type IA2<'a when 'a :> IB2<'a> and 'a :> IA2<'a>> = + abstract M: int + and IB2<'b when 'b :> IA2<'b> and 'b :> IB2<'b>> = + abstract M: int + +> val it: string = + "Regression_139182: Expect the follow code to be accepted without error" + +> [] +type S = + member TheMethod: unit -> int64 +val theMethod: s: S -> int64 +type T = + new: unit -> T + member Prop5: int64 + static member Prop1: int64 + static member Prop2: int64 + static member Prop3: int64 + static member Prop4: string + +> val it: System.Threading.ThreadLocal list = [0 {IsValueCreated = false; + Values = ?;}] + +> type MyDU = + | Case1 of Val1: int * Val2: string + | Case2 of string * V2: bool * float + | Case3 of int + | Case4 of Item1: bool + | Case5 of bool * string + | Case6 of Val1: int * bool * string + | Case7 of ``Big Name`` : int +val namedFieldVar1: MyDU +val namedFieldVar2: MyDU + +> exception MyNamedException1 of Val1: int * Val2: string +exception MyNamedException2 of string * V2: bool * float +exception MyNamedException3 of Data: int +exception MyNamedException4 of bool +exception MyNamedException5 of int * string +exception MyNamedException6 of Val1: int * bool * string * Data8: float +exception MyNamedException7 of ``Big Named Field`` : int +val namedEx1: exn +val namedEx2: exn + +> type optionRecord = + { x: int option } +val x: optionRecord + +> type optionRecord = + { x: obj } +val x: optionRecord + +> type RecordWithMembers = + { x: obj } + member Method: unit -> int + member Property: int + +> type UnionWithMembers = + | Case1 + | Case2 of int + member Method: unit -> int + member Property: int + +> type OneFieldRecordNoXmlDoc = + { OneField: obj } + +> type OneFieldRecordXmlDoc = + { + OneField: obj + } + +> type TwoFieldRecordNoXmlDoc = + { + TwoFields1: obj + TwoFields2: obj + } + +> type TwoFieldRecordXmlDoc = + { + TwoFields1: obj + TwoFields2: obj + } + +> type Int32 with + member ExtrinsicExtensionProperty: int +type Int32 with + member ExtrinsicExtensionMethod: unit -> int + +> val ``value with spaces in name`` : bool + +> val functionWhichTakesLongNameMixedParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int * + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int + -> ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int * + dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesLongNameTupledParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int * + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int * + ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int * + ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesLongNameCurriedParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int + -> bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int + -> cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int + -> dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesMixedLengthCurriedParametersA: + a: 'a -> b: 'b -> c: 'c -> ddddddddddddddddddddddddddddddddddddddddddddd: 'd + -> int + +> val functionWhichTakesMixedLengthCurriedParametersB: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: 'a -> b: 'b -> c: 'c -> d: 'd -> int + +> val f: ``parameter with spaces in name`` : int -> int + +> val functionWhichTakesAParameterPeeciselyPlusButNotOpAddition: + ``+`` : (int -> int -> int) -> int + +> val functionWhichTakesAParameterOpAddition: (+) : (int -> int -> int) -> int + +> val functionWhichTakesAParameterCalled_land: + ``land`` : (int -> int -> int) -> int + +> type RecordWithStrangeNames = + { + ``funky name`` : obj + op_Addition: obj + ``+`` : obj + ``land`` : obj + ``base`` : obj + } + +> type UnionWithSpacesInNamesOfCases = + | ``Funky name`` + | ``Funky name 2`` + +> type ``Type with spaces in name`` = + | A + | B + +> type op_Addition = + | A + | B + +> type ``land`` = + | A + | B + +> module ``Module with spaces in name`` = + val x: int + +> module op_Addition = + val x: int + +> module ``land`` = + val x: int + +> val ``+`` : x: 'a -> y: 'b -> int + +> val (+) : x: int -> y: int -> int + +> val ``base`` : int + +> val (mod) : int + +> val ``or`` : int + +> val ``land`` : int + +> val ``.ctor`` : int + +> val ``.cctor`` : int + +> [] +val SomeLiteralWithASomewhatLongName: string + = "SomeVeryLongLiteralValueWithLotsOfCharacters" +[] +val SomeLiteralWithASomewhatLongName2: string + = + "SomeVeryLongLiteralValueWithLotsOfCharactersSomeVeryLongLiteralValueWithLotsOfCharactersSomeVeryLongLiteralValueWithLotsOfCharacters" +[] +val ShortName: string = "hi" + +> val it: System.DayOfWeek = Tuesday + +> val internal f: unit -> int + +> val it: int = 1 + +> type internal CInternal = + new: unit -> CInternal + +> val it: unit = () + +> type internal CPublic = + new: unit -> CPublic + member MInternal: unit -> unit + +> val it: unit = () + +> type internal CPublic2 = + new: unit -> CPublic2 + member MPublic: unit -> int + +> val it: int = 1 + +> val inst1: TestLoadFile.ClassInFile1 + +> val inst2: TestLoadFile2.ClassInFile2 + +> > > diff --git a/tests/fsharp/core/printing/output.quiet.stderr.txt b/tests/fsharp/core/printing/output.quiet.stderr.txt new file mode 100644 index 00000000000..6926dcc9f34 --- /dev/null +++ b/tests/fsharp/core/printing/output.quiet.stderr.txt @@ -0,0 +1,348 @@ + + #blaaaaaa // blaaaaaa is not a known command;; + ^^^^^^^^^ + +stdin(219,1): warning FS3353: Invalid directive '#blaaaaaa ' + + + type Regression4319_T0 = static member (+-+-+) = "0 arguments";; + -----------------------------------------^^^^^ + +stdin(571,42): warning FS1172: Infix operator member '+-+-+' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1 = static member (+-+-+) x = "1 argument";; + -----------------------------------------^^^^^ + +stdin(572,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1b = static member (+-+-+) (x) = "1 (argument) [brackets make no diff]";; + -----------------------------------------^^^^^ + +stdin(573,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1c = static member (+-+-+) x = let a,b = x in "1 argument, tuple typed from RHS. Still not OK";; + -----------------------------------------^^^^^ + +stdin(574,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1d = static member (+-+-+) (x:int*int) = "1 argument, tuple typed from LHS. Still not OK";; + -----------------------------------------^^^^^ + +stdin(575,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T3 = static member (+-+-+) (x,y,z) = "3 arguments";; + -----------------------------------------^^^^^ + +stdin(577,42): warning FS1173: Infix operator member '+-+-+' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1 = static member (+-+-+) x moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(578,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1 = static member (+-+-+) x moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(578,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1b = static member (+-+-+) (x) moreArgs = "1 (argument) [brackets make no diff] and further args";; + -----------------------------------------^^^^^ + +stdin(579,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1b = static member (+-+-+) (x) moreArgs = "1 (argument) [brackets make no diff] and further args";; + -----------------------------------------^^^^^ + +stdin(579,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U2 = static member (+-+-+) (x,y) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(580,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U3 = static member (+-+-+) (x,y,z) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(581,42): warning FS1173: Infix operator member '+-+-+' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U3 = static member (+-+-+) (x,y,z) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(581,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (:=) = "COLON_EQUALS" + -------------------^^ + +stdin(584,20): warning FS1172: Infix operator member ':=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (:=) = "COLON_EQUALS" + -------------------^^ + +stdin(584,20): warning FS0086: The name '(:=)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (&) = "AMP" + -------------------^ + +stdin(588,20): warning FS1172: Infix operator member '&' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (&) = "AMP" + -------------------^ + +stdin(588,20): warning FS0086: The name '(&)' should not be used as a member name. If defining a static member for use from other CLI languages then use the name 'op_Amp' instead. + + + static member (&^) = "AMP_AMP" + -------------------^^ + +stdin(589,20): warning FS1172: Infix operator member '&^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (=) = "EQUALS" + -------------------^ + +stdin(590,20): warning FS1172: Infix operator member '=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (=) = "EQUALS" + -------------------^ + +stdin(590,20): warning FS0086: The name '(=)' should not be used as a member name. To define equality semantics for a type, override the 'Object.Equals' member. If defining a static member for use from other CLI languages then use the name 'op_Equality' instead. + + + static member (!=) = "INFIX_COMPARE_OP" + -------------------^^ + +stdin(592,20): warning FS1172: Infix operator member '!=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...=) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(596,20): warning FS1172: Infix operator member '...=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...!=) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^^ + +stdin(597,20): warning FS1172: Infix operator member '...!=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...<) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(598,20): warning FS1172: Infix operator member '...<' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...>) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(599,20): warning FS1172: Infix operator member '...>' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ($) = "DOLLAR" + -------------------^ + +stdin(601,20): warning FS1172: Infix operator member '$' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (<) = "LESS" + -------------------^ + +stdin(602,20): warning FS1172: Infix operator member '<' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (<) = "LESS" + -------------------^ + +stdin(602,20): warning FS0086: The name '(<)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name 'op_LessThan' instead. + + + static member (>) = "GREATER" + -------------------^ + +stdin(603,20): warning FS1172: Infix operator member '>' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (>) = "GREATER" + -------------------^ + +stdin(603,20): warning FS0086: The name '(>)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name 'op_GreaterThan' instead. + + + static member (@) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(604,20): warning FS1172: Infix operator member '@' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (@) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(604,20): warning FS0086: The name '(@)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (^) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(605,20): warning FS1172: Infix operator member '^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (^) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(605,20): warning FS0086: The name '(^)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (...@) = "INFIX_AT_HAT_OP" // with $. prefix + -------------------^^^^ + +stdin(606,20): warning FS1172: Infix operator member '...@' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...^) = "INFIX_AT_HAT_OP" // with $. prefix + -------------------^^^^ + +stdin(607,20): warning FS1172: Infix operator member '...^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (%) = "PERCENT_OP" + -------------------^ + +stdin(608,20): warning FS1172: Infix operator member '%' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (-) = "MINUS" + -------------------^ + +stdin(610,20): warning FS1172: Infix operator member '-' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( * ) = "STAR" + --------------------^ + +stdin(611,21): warning FS1172: Infix operator member '*' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (/) = "INFIX_STAR_DIV_MOD_OP" + -------------------^ + +stdin(613,20): warning FS1172: Infix operator member '/' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ...* ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(615,21): warning FS1172: Infix operator member '...*' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( .../ ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(616,21): warning FS1172: Infix operator member '.../' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ...% ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(617,21): warning FS1172: Infix operator member '...%' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ** ) = "INFIX_STAR_STAR_OP" + --------------------^^ + +stdin(618,21): warning FS1172: Infix operator member '**' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + member this.ToString() = "ABC" + ----------------^^^^^^^^ + +stdin(623,17): warning FS0864: This new member hides the abstract member 'System.Object.ToString() : string'. Rename the member or use 'override' instead. + + + let x,f = it, (fun () -> !it);; // this will read from the static storage for 'it' + -------------------------^ + +stdin(643,26): info FS3370: The use of '!' from the F# library is deprecated. See https://aka.ms/fsharp-refcell-ops. For example, please change '!cell' to 'cell.Value'. + + + x := 3;; + --^^ + +stdin(645,3): info FS3370: The use of ':=' from the F# library is deprecated. See https://aka.ms/fsharp-refcell-ops. For example, please change 'cell := expr' to 'cell.Value <- expr'. + + + member this.M() = "string" + ----------------^ + +stdin(764,17): error FS0438: Duplicate method. The method 'M' has the same name and signature as another method in type 'ExpectDupMethod'. + + + member this.P = "string" + ----------------^ + +stdin(771,17): error FS0438: Duplicate method. The method 'get_P' has the same name and signature as another method in type 'ExpectDupProperty'. + + + type public IBPublic = interface inherit IAPrivate abstract Q : int end + ------------------^^^^^^^^ + +stdin(778,19): error FS0410: The type 'IAPrivate' is less accessible than the value, member or type 'IBPublic' it is used in. + + + type internal IBInternal = interface inherit IAPrivate abstract Q : int end + ------------------^^^^^^^^^^ + +stdin(783,19): error FS0410: The type 'IAPrivate' is less accessible than the value, member or type 'IBInternal' it is used in. + + + type public IBPublic = interface inherit IAInternal abstract Q : int end + ------------------^^^^^^^^ + +stdin(792,19): error FS0410: The type 'IAInternal' is less accessible than the value, member or type 'IBPublic' it is used in. + + + override x.M(a:string) = 1 + -------------------^ + +stdin(824,20): error FS0361: The override 'M: string -> int' implements more than one abstract slot, e.g. 'abstract Regression4232.D.M: 'U -> int' and 'abstract Regression4232.D.M: 'T -> int' + + + let (|A|B|) (x:int) = A x;; + -----^^^^^ + +stdin(832,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) (x:'a) = A x;; + -----^^^^^ + +stdin(835,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) (p:'a) (x:int) = A p;; + -----^^^^^ + +stdin(838,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) = failwith "" : Choice;; + -----^^^^^ + +stdin(844,6): error FS1209: Active pattern '|A|B|' is not a function + diff --git a/tests/fsharp/core/printing/output.quiet.stdout.txt b/tests/fsharp/core/printing/output.quiet.stdout.txt new file mode 100644 index 00000000000..26683b52103 --- /dev/null +++ b/tests/fsharp/core/printing/output.quiet.stdout.txt @@ -0,0 +1,13 @@ +[Building 2 4...done] +[Building 2 6...done] +[Building 2 8...done] +[Building 2 10...done] +[Building 2 12...done] +[Building 2 14...done] +[Building 3 8...done] +[Building 4 8...done] +[Building 5 8...done] +[Building 6 8...done] +[Building 5 3...done] +Expect ABC = ABC +Expect ABC = ABC diff --git a/tests/fsharp/core/printing/output.stderr.txt b/tests/fsharp/core/printing/output.stderr.txt new file mode 100644 index 00000000000..6926dcc9f34 --- /dev/null +++ b/tests/fsharp/core/printing/output.stderr.txt @@ -0,0 +1,348 @@ + + #blaaaaaa // blaaaaaa is not a known command;; + ^^^^^^^^^ + +stdin(219,1): warning FS3353: Invalid directive '#blaaaaaa ' + + + type Regression4319_T0 = static member (+-+-+) = "0 arguments";; + -----------------------------------------^^^^^ + +stdin(571,42): warning FS1172: Infix operator member '+-+-+' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1 = static member (+-+-+) x = "1 argument";; + -----------------------------------------^^^^^ + +stdin(572,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1b = static member (+-+-+) (x) = "1 (argument) [brackets make no diff]";; + -----------------------------------------^^^^^ + +stdin(573,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1c = static member (+-+-+) x = let a,b = x in "1 argument, tuple typed from RHS. Still not OK";; + -----------------------------------------^^^^^ + +stdin(574,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T1d = static member (+-+-+) (x:int*int) = "1 argument, tuple typed from LHS. Still not OK";; + -----------------------------------------^^^^^ + +stdin(575,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_T3 = static member (+-+-+) (x,y,z) = "3 arguments";; + -----------------------------------------^^^^^ + +stdin(577,42): warning FS1173: Infix operator member '+-+-+' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1 = static member (+-+-+) x moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(578,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1 = static member (+-+-+) x moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(578,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1b = static member (+-+-+) (x) moreArgs = "1 (argument) [brackets make no diff] and further args";; + -----------------------------------------^^^^^ + +stdin(579,42): warning FS1173: Infix operator member '+-+-+' has 1 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U1b = static member (+-+-+) (x) moreArgs = "1 (argument) [brackets make no diff] and further args";; + -----------------------------------------^^^^^ + +stdin(579,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U2 = static member (+-+-+) (x,y) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(580,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U3 = static member (+-+-+) (x,y,z) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(581,42): warning FS1173: Infix operator member '+-+-+' has 3 initial argument(s). Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + type Regression4319_U3 = static member (+-+-+) (x,y,z) moreArgs = "1 argument and further args";; + -----------------------------------------^^^^^ + +stdin(581,42): warning FS1174: Infix operator member '+-+-+' has extra curried arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (:=) = "COLON_EQUALS" + -------------------^^ + +stdin(584,20): warning FS1172: Infix operator member ':=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (:=) = "COLON_EQUALS" + -------------------^^ + +stdin(584,20): warning FS0086: The name '(:=)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (&) = "AMP" + -------------------^ + +stdin(588,20): warning FS1172: Infix operator member '&' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (&) = "AMP" + -------------------^ + +stdin(588,20): warning FS0086: The name '(&)' should not be used as a member name. If defining a static member for use from other CLI languages then use the name 'op_Amp' instead. + + + static member (&^) = "AMP_AMP" + -------------------^^ + +stdin(589,20): warning FS1172: Infix operator member '&^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (=) = "EQUALS" + -------------------^ + +stdin(590,20): warning FS1172: Infix operator member '=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (=) = "EQUALS" + -------------------^ + +stdin(590,20): warning FS0086: The name '(=)' should not be used as a member name. To define equality semantics for a type, override the 'Object.Equals' member. If defining a static member for use from other CLI languages then use the name 'op_Equality' instead. + + + static member (!=) = "INFIX_COMPARE_OP" + -------------------^^ + +stdin(592,20): warning FS1172: Infix operator member '!=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...=) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(596,20): warning FS1172: Infix operator member '...=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...!=) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^^ + +stdin(597,20): warning FS1172: Infix operator member '...!=' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...<) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(598,20): warning FS1172: Infix operator member '...<' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...>) = "INFIX_COMPARE_OP" // with $. prefix + -------------------^^^^ + +stdin(599,20): warning FS1172: Infix operator member '...>' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ($) = "DOLLAR" + -------------------^ + +stdin(601,20): warning FS1172: Infix operator member '$' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (<) = "LESS" + -------------------^ + +stdin(602,20): warning FS1172: Infix operator member '<' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (<) = "LESS" + -------------------^ + +stdin(602,20): warning FS0086: The name '(<)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name 'op_LessThan' instead. + + + static member (>) = "GREATER" + -------------------^ + +stdin(603,20): warning FS1172: Infix operator member '>' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (>) = "GREATER" + -------------------^ + +stdin(603,20): warning FS0086: The name '(>)' should not be used as a member name. To define comparison semantics for a type, implement the 'System.IComparable' interface. If defining a static member for use from other CLI languages then use the name 'op_GreaterThan' instead. + + + static member (@) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(604,20): warning FS1172: Infix operator member '@' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (@) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(604,20): warning FS0086: The name '(@)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (^) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(605,20): warning FS1172: Infix operator member '^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (^) = "INFIX_AT_HAT_OP" + -------------------^ + +stdin(605,20): warning FS0086: The name '(^)' should not be used as a member name because it is given a standard definition in the F# library over fixed types + + + static member (...@) = "INFIX_AT_HAT_OP" // with $. prefix + -------------------^^^^ + +stdin(606,20): warning FS1172: Infix operator member '...@' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (...^) = "INFIX_AT_HAT_OP" // with $. prefix + -------------------^^^^ + +stdin(607,20): warning FS1172: Infix operator member '...^' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (%) = "PERCENT_OP" + -------------------^ + +stdin(608,20): warning FS1172: Infix operator member '%' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (-) = "MINUS" + -------------------^ + +stdin(610,20): warning FS1172: Infix operator member '-' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( * ) = "STAR" + --------------------^ + +stdin(611,21): warning FS1172: Infix operator member '*' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member (/) = "INFIX_STAR_DIV_MOD_OP" + -------------------^ + +stdin(613,20): warning FS1172: Infix operator member '/' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ...* ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(615,21): warning FS1172: Infix operator member '...*' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( .../ ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(616,21): warning FS1172: Infix operator member '.../' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ...% ) = "INFIX_STAR_DIV_MOD_OP" // with $. prefix + --------------------^^^^ + +stdin(617,21): warning FS1172: Infix operator member '...%' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + static member ( ** ) = "INFIX_STAR_STAR_OP" + --------------------^^ + +stdin(618,21): warning FS1172: Infix operator member '**' has no arguments. Expected a tuple of 2 arguments, e.g. static member (+) (x,y) = ... + + + member this.ToString() = "ABC" + ----------------^^^^^^^^ + +stdin(623,17): warning FS0864: This new member hides the abstract member 'System.Object.ToString() : string'. Rename the member or use 'override' instead. + + + let x,f = it, (fun () -> !it);; // this will read from the static storage for 'it' + -------------------------^ + +stdin(643,26): info FS3370: The use of '!' from the F# library is deprecated. See https://aka.ms/fsharp-refcell-ops. For example, please change '!cell' to 'cell.Value'. + + + x := 3;; + --^^ + +stdin(645,3): info FS3370: The use of ':=' from the F# library is deprecated. See https://aka.ms/fsharp-refcell-ops. For example, please change 'cell := expr' to 'cell.Value <- expr'. + + + member this.M() = "string" + ----------------^ + +stdin(764,17): error FS0438: Duplicate method. The method 'M' has the same name and signature as another method in type 'ExpectDupMethod'. + + + member this.P = "string" + ----------------^ + +stdin(771,17): error FS0438: Duplicate method. The method 'get_P' has the same name and signature as another method in type 'ExpectDupProperty'. + + + type public IBPublic = interface inherit IAPrivate abstract Q : int end + ------------------^^^^^^^^ + +stdin(778,19): error FS0410: The type 'IAPrivate' is less accessible than the value, member or type 'IBPublic' it is used in. + + + type internal IBInternal = interface inherit IAPrivate abstract Q : int end + ------------------^^^^^^^^^^ + +stdin(783,19): error FS0410: The type 'IAPrivate' is less accessible than the value, member or type 'IBInternal' it is used in. + + + type public IBPublic = interface inherit IAInternal abstract Q : int end + ------------------^^^^^^^^ + +stdin(792,19): error FS0410: The type 'IAInternal' is less accessible than the value, member or type 'IBPublic' it is used in. + + + override x.M(a:string) = 1 + -------------------^ + +stdin(824,20): error FS0361: The override 'M: string -> int' implements more than one abstract slot, e.g. 'abstract Regression4232.D.M: 'U -> int' and 'abstract Regression4232.D.M: 'T -> int' + + + let (|A|B|) (x:int) = A x;; + -----^^^^^ + +stdin(832,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) (x:'a) = A x;; + -----^^^^^ + +stdin(835,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) (p:'a) (x:int) = A p;; + -----^^^^^ + +stdin(838,6): error FS1210: Active pattern '|A|B|' has a result type containing type variables that are not determined by the input. The common cause is a when a result case is not mentioned, e.g. 'let (|A|B|) (x:int) = A x'. This can be fixed with a type constraint, e.g. 'let (|A|B|) (x:int) : Choice = A x' + + + let (|A|B|) = failwith "" : Choice;; + -----^^^^^ + +stdin(844,6): error FS1209: Active pattern '|A|B|' is not a function + diff --git a/tests/fsharp/core/printing/output.stdout.txt b/tests/fsharp/core/printing/output.stdout.txt new file mode 100644 index 00000000000..77a168f1190 --- /dev/null +++ b/tests/fsharp/core/printing/output.stdout.txt @@ -0,0 +1,6296 @@ + +> val repeatId: string = "A" + +> val repeatId: string = "B" + +namespace FSI_0004 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile1 = + new: unit -> ClassInFile1 + +namespace FSI_0005 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile1 = + new: unit -> ClassInFile1 + +namespace FSI_0005 + val x1: int + val x2: string + val x3: 'a option + val x4: int option + val x5: 'a list + val x6: int list + val x7: System.Windows.Forms.Form + val x8: int[,] + val x9: Lazy + type ClassInFile2 = + new: unit -> ClassInFile2 + +> val x1: seq +val x2: seq +val x3: seq +val f1: System.Windows.Forms.Form = System.Windows.Forms.Form, Text: f1 form +val fs: System.Windows.Forms.Form[] = + [|System.Windows.Forms.Form, Text: fs #0; + System.Windows.Forms.Form, Text: fs #1; + System.Windows.Forms.Form, Text: fs #2; + System.Windows.Forms.Form, Text: fs #3; + System.Windows.Forms.Form, Text: fs #4; + System.Windows.Forms.Form, Text: fs #5; + System.Windows.Forms.Form, Text: fs #6; + System.Windows.Forms.Form, Text: fs #7; + System.Windows.Forms.Form, Text: fs #8; + System.Windows.Forms.Form, Text: fs #9; + System.Windows.Forms.Form, Text: fs #10; + System.Windows.Forms.Form, Text: fs #11; + System.Windows.Forms.Form, Text: fs #12; + System.Windows.Forms.Form, Text: fs #13; + System.Windows.Forms.Form, Text: fs #14; + System.Windows.Forms.Form, Text: fs #15; + System.Windows.Forms.Form, Text: fs #16; + System.Windows.Forms.Form, Text: fs #17; + System.Windows.Forms.Form, Text: fs #18; + System.Windows.Forms.Form, Text: fs #19; + System.Windows.Forms.Form, Text: fs #20; + System.Windows.Forms.Form, Text: fs #21; + System.Windows.Forms.Form, Text: fs #22; + System.Windows.Forms.Form, Text: fs #23; + System.Windows.Forms.Form, Text: fs #24; + System.Windows.Forms.Form, Text: fs #25; + System.Windows.Forms.Form, Text: fs #26; + System.Windows.Forms.Form, Text: fs #27; + System.Windows.Forms.Form, Text: fs #28; + System.Windows.Forms.Form, Text: fs #29; + System.Windows.Forms.Form, Text: fs #30; + System.Windows.Forms.Form, Text: fs #31; + System.Windows.Forms.Form, Text: fs #32; + System.Windows.Forms.Form, Text: fs #33; + System.Windows.Forms.Form, Text: fs #34; + System.Windows.Forms.Form, Text: fs #35; + System.Windows.Forms.Form, Text: fs #36; + System.Windows.Forms.Form, Text: fs #37; + System.Windows.Forms.Form, Text: fs #38; + System.Windows.Forms.Form, Text: fs #39; + System.Windows.Forms.Form, Text: fs #40; + System.Windows.Forms.Form, Text: fs #41; + System.Windows.Forms.Form, Text: fs #42; + System.Windows.Forms.Form, Text: fs #43; + System.Windows.Forms.Form, Text: fs #44; + System.Windows.Forms.Form, Text: fs #45; + System.Windows.Forms.Form, Text: fs #46; + System.Windows.Forms.Form, Text: fs #47; + System.Windows.Forms.Form, Text: fs #48; + System.Windows.Forms.Form, Text: fs #49; + System.Windows.Forms.Form, Text: fs #50; + System.Windows.Forms.Form, Text: fs #51; + System.Windows.Forms.Form, Text: fs #52; + System.Windows.Forms.Form, Text: fs #53; + System.Windows.Forms.Form, Text: fs #54; + System.Windows.Forms.Form, Text: fs #55; + System.Windows.Forms.Form, Text: fs #56; + System.Windows.Forms.Form, Text: fs #57; + System.Windows.Forms.Form, Text: fs #58; + System.Windows.Forms.Form, Text: fs #59; + System.Windows.Forms.Form, Text: fs #60; + System.Windows.Forms.Form, Text: fs #61; + System.Windows.Forms.Form, Text: fs #62; + System.Windows.Forms.Form, Text: fs #63; + System.Windows.Forms.Form, Text: fs #64; + System.Windows.Forms.Form, Text: fs #65; + System.Windows.Forms.Form, Text: fs #66; + System.Windows.Forms.Form, Text: fs #67; + System.Windows.Forms.Form, Text: fs #68; + System.Windows.Forms.Form, Text: fs #69; + System.Windows.Forms.Form, Text: fs #70; + System.Windows.Forms.Form, Text: fs #71; + System.Windows.Forms.Form, Text: fs #72; + System.Windows.Forms.Form, Text: fs #73; + System.Windows.Forms.Form, Text: fs #74; + System.Windows.Forms.Form, Text: fs #75; + System.Windows.Forms.Form, Text: fs #76; + System.Windows.Forms.Form, Text: fs #77; + System.Windows.Forms.Form, Text: fs #78; + System.Windows.Forms.Form, Text: fs #79; + System.Windows.Forms.Form, Text: fs #80; + System.Windows.Forms.Form, Text: fs #81; + System.Windows.Forms.Form, Text: fs #82; + System.Windows.Forms.Form, Text: fs #83; + System.Windows.Forms.Form, Text: fs #84; + System.Windows.Forms.Form, Text: fs #85; + System.Windows.Forms.Form, Text: fs #86; + System.Windows.Forms.Form, Text: fs #87; + System.Windows.Forms.Form, Text: fs #88; + System.Windows.Forms.Form, Text: fs #89; + System.Windows.Forms.Form, Text: fs #90; + System.Windows.Forms.Form, Text: fs #91; + System.Windows.Forms.Form, Text: fs #92; + System.Windows.Forms.Form, Text: fs #93; + System.Windows.Forms.Form, Text: fs #94; + System.Windows.Forms.Form, Text: fs #95; + System.Windows.Forms.Form, Text: fs #96; + System.Windows.Forms.Form, Text: fs #97; + System.Windows.Forms.Form, Text: fs #98; + System.Windows.Forms.Form, Text: fs #99; ...|] +val xs: string list = + ["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; "13"; + "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; "24"; "25"; + "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"; + "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"; "48"; "49"; + "50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"; "58"; "59"; "60"; "61"; + "62"; "63"; "64"; "65"; "66"; "67"; "68"; "69"; "70"; "71"; "72"; "73"; + "74"; "75"; "76"; "77"; "78"; "79"; "80"; "81"; "82"; "83"; "84"; "85"; + "86"; "87"; "88"; "89"; "90"; "91"; "92"; "93"; "94"; "95"; "96"; "97"; + "98"; "99"; ...] +val xa: string[] = + [|"0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; "13"; + "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; "24"; "25"; + "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"; + "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"; "48"; "49"; + "50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"; "58"; "59"; "60"; "61"; + "62"; "63"; "64"; "65"; "66"; "67"; "68"; "69"; "70"; "71"; "72"; "73"; + "74"; "75"; "76"; "77"; "78"; "79"; "80"; "81"; "82"; "83"; "84"; "85"; + "86"; "87"; "88"; "89"; "90"; "91"; "92"; "93"; "94"; "95"; "96"; "97"; + "98"; "99"; ...|] +val xa2: string[,] = [["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"] + ["10"; "11"; "12"; "13"; "14"; "15"; "16"; "17"] + ["20"; "21"; "22"; "23"; "24"; "25"; "26"; "27"] + ["30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"] + ["40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"] + ["50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"] + ["60"; "61"; "62"; "63"; "64"; "65"; "66"; "67"] + ["70"; "71"; "72"; "73"; "74"; "75"; "76"; "77"]] +val sxs0: Set = set [] + +> val sxs1: Set = set ["0"] + +> val sxs2: Set = set ["0"; "1"] + +> val sxs3: Set = set ["0"; "1"; "2"] + +> val sxs4: Set = set ["0"; "1"; "2"; "3"] + +> val sxs200: Set = + set ["0"; "1"; "10"; "100"; "101"; "102"; "103"; "104"; "105"; ...] + +> val msxs0: Map = map [] + +> val msxs1: Map = map [(0, "0")] + +> val msxs2: Map = map [(0, "0"); (1, "1")] + +> val msxs3: Map = map [(0, "0"); (1, "1"); (2, "2")] + +> val msxs4: Map = map [(0, "0"); (1, "1"); (2, "2"); (3, "3")] + +> val msxs200: Map = + map + [(0, "0"); (1, "1"); (2, "2"); (3, "3"); (4, "4"); (5, "5"); (6, "6"); + (7, "7"); (8, "8"); ...] + +> module M = + val a: string = "sub-binding" + val b: + (seq * seq * seq * System.Windows.Forms.Form) option * + (string list * string list * string[,]) option = + (Some (, , , System.Windows.Forms.Form, Text: f1 form), + Some + (["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; + "13"; "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; + "24"; "25"; "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; + "35"; "36"; "37"; "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; + "46"; "47"; "48"; "49"; "50"; "51"; "52"; "53"; "54"; "55"; "56"; + "57"; "58"; "59"; "60"; "61"; "62"; "63"; "64"; "65"; "66"; "67"; + "68"; "69"; "70"; "71"; "72"; "73"; "74"; "75"; "76"; "77"; "78"; + "79"; "80"; "81"; "82"; "83"; "84"; "85"; "86"; "87"; "88"; "89"; + "90"; "91"; "92"; "93"; "94"; "95"; "96"; "97"; "98"; "99"; ...], + ["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"; "8"; "9"; "10"; "11"; "12"; + "13"; "14"; "15"; "16"; "17"; "18"; "19"; "20"; "21"; "22"; "23"; + "24"; "25"; "26"; "27"; "28"; "29"; "30"; "31"; "32"; "33"; "34"; + "35"; "36"; "37"; "38"; "39"; "40"; "41"; "42"; "43"; "44"; "45"; + "46"; "47"; "48"; "49"; "50"; "51"; "52"; "53"; "54"; "55"; "56"; + "57"; "58"; "59"; "60"; "61"; "62"; "63"; "64"; "65"; "66"; "67"; + "68"; "69"; "70"; "71"; "72"; "73"; "74"; "75"; "76"; "77"; "78"; + "79"; "80"; "81"; "82"; "83"; "84"; "85"; "86"; "87"; "88"; "89"; + "90"; "91"; "92"; "93"; "94"; "95"; "96"; "97"; "98"; "99"; ...], + [["0"; "1"; "2"; "3"; "4"; "5"; "6"; "7"] + ["10"; "11"; "12"; "13"; "14"; "15"; "16"; "17"] + ["20"; "21"; "22"; "23"; "24"; "25"; "26"; "27"] + ["30"; "31"; "32"; "33"; "34"; "35"; "36"; "37"] + ["40"; "41"; "42"; "43"; "44"; "45"; "46"; "47"] + ["50"; "51"; "52"; "53"; "54"; "55"; "56"; "57"] + ["60"; "61"; "62"; "63"; "64"; "65"; "66"; "67"] + ["70"; "71"; "72"; "73"; "74"; "75"; "76"; "77"]])) +type T = + new: a: int * b: int -> T + member AMethod: x: int -> int + static member StaticMethod: x: int -> int + member AProperty: int + static member StaticProperty: int +val f_as_method: x: int -> int +val f_as_thunk: (int -> int) +val refCell: string ref = { contents = "value" } +module D1 = + val words: System.Collections.Generic.IDictionary + val words2000: System.Collections.Generic.IDictionary + +> > module D2 = + val words: IDictionary + val words2000: IDictionary +val opt1: 'a option +val opt1b: int option = None +val opt4: 'a option option option option +val opt4b: int option option option option = Some (Some (Some None)) +val opt5: int list option option option option option list = + [Some (Some (Some (Some None))); + Some (Some (Some (Some (Some [1; 2; 3; 4; 5; 6])))); + Some + (Some + (Some + (Some + (Some + [1; 2; 3; 4; 5; 6; 7; 8; 9; 0; 1; 2; 3; 4; 5; 6; 7; 8; 9; 1; + 2; 3; 4; 5; 6; 7; 8; 9; 1; 2; 3; 4; 5; 6; 7; 8; 9; 1; 2; 3; + 4; 5; 6; 7; 8; 9; 1; 2; 3; 4; 5; 6; 7; 8; 9; 0]))))] +val mkStr: n: int -> string +val strs: string[] = + [|""; "-"; "--"; "---"; "----"; "-----"; "------"; "-------"; "--------"; + "---------"; "----------"; "-----------"; "------------"; "-------------"; + "--------------"; "---------------"; "----------------"; + "-----------------"; "------------------"; "-------------------"; + "--------------------"; "---------------------"; "----------------------"; + "-----------------------"; "------------------------"; + "-------------------------"; "--------------------------"; + "---------------------------"; "----------------------------"; + "-----------------------------"; "------------------------------"; + "-------------------------------"; "--------------------------------"; + "---------------------------------"; "----------------------------------"; + "-----------------------------------"; + "------------------------------------"; + "-------------------------------------"; + "--------------------------------------"; + "---------------------------------------"; + "----------------------------------------"; + "-----------------------------------------"; + "------------------------------------------"; + "-------------------------------------------"; + "--------------------------------------------"; + "---------------------------------------------"; + "----------------------------------------------"; + "-----------------------------------------------"; + "------------------------------------------------"; + "-------------------------------------------------"; + "--------------------------------------------------"; + "---------------------------------------------------"; + "----------------------------------------------------"; + "-----------------------------------------------------"; + "------------------------------------------------------"; + "-------------------------------------------------------"; + "--------------------------------------------------------"; + "---------------------------------------------------------"; + "----------------------------------------------------------"; + "-----------------------------------------------------------"; + "------------------------------------------------------------"; + "-------------------------------------------------------------"; + "--------------------------------------------------------------"; + "---------------------------------------------------------------"; + "----------------------------------------------------------------"; + "-----------------------------------------------------------------"; + "------------------------------------------------------------------"; + "-------------------------------------------------------------------"; + "--------------------------------------------------------------------"; + "---------------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-----------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[12 chars]; + "-------------------------------------------------------------"+[13 chars]; + "-------------------------------------------------------------"+[14 chars]; + "-------------------------------------------------------------"+[15 chars]; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[18 chars]; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[20 chars]; + "-------------------------------------------------------------"+[21 chars]; + "-------------------------------------------------------------"+[22 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[24 chars]; + "-------------------------------------------------------------"+[25 chars]; + "-------------------------------------------------------------"+[26 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[28 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[31 chars]; + "-------------------------------------------------------------"+[32 chars]; + "-------------------------------------------------------------"+[33 chars]; + "-------------------------------------------------------------"+[34 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[36 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[38 chars]|] +val str7s: string[] = + [|""; "-------"; "--------------"; "---------------------"; + "----------------------------"; "-----------------------------------"; + "------------------------------------------"; + "-------------------------------------------------"; + "--------------------------------------------------------"; + "---------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[58 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[72 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[86 chars]; + "-------------------------------------------------------------"+[93 chars]; + "-------------------------------------------------------------"+[100 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[114 chars]; + "-------------------------------------------------------------"+[121 chars]; + "-------------------------------------------------------------"+[128 chars]; + "-------------------------------------------------------------"+[135 chars]; + "-------------------------------------------------------------"+[142 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[156 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[170 chars]; + "-------------------------------------------------------------"+[177 chars]; + "-------------------------------------------------------------"+[184 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[198 chars]; + "-------------------------------------------------------------"+[205 chars]; + "-------------------------------------------------------------"+[212 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[226 chars]; + "-------------------------------------------------------------"+[233 chars]; + "-------------------------------------------------------------"+[240 chars]; + "-------------------------------------------------------------"+[247 chars]; + "-------------------------------------------------------------"+[254 chars]; + "-------------------------------------------------------------"+[261 chars]; + "-------------------------------------------------------------"+[268 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[282 chars]; + "-------------------------------------------------------------"+[289 chars]; + "-------------------------------------------------------------"+[296 chars]; + "-------------------------------------------------------------"+[303 chars]; + "-------------------------------------------------------------"+[310 chars]; + "-------------------------------------------------------------"+[317 chars]; + "-------------------------------------------------------------"+[324 chars]; + "-------------------------------------------------------------"+[331 chars]; + "-------------------------------------------------------------"+[338 chars]; + "-------------------------------------------------------------"+[345 chars]; + "-------------------------------------------------------------"+[352 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[366 chars]; + "-------------------------------------------------------------"+[373 chars]; + "-------------------------------------------------------------"+[380 chars]; + "-------------------------------------------------------------"+[387 chars]; + "-------------------------------------------------------------"+[394 chars]; + "-------------------------------------------------------------"+[401 chars]; + "-------------------------------------------------------------"+[408 chars]; + "-------------------------------------------------------------"+[415 chars]; + "-------------------------------------------------------------"+[422 chars]; + "-------------------------------------------------------------"+[429 chars]; + "-------------------------------------------------------------"+[436 chars]; + "-------------------------------------------------------------"+[443 chars]; + "-------------------------------------------------------------"+[450 chars]; + "-------------------------------------------------------------"+[457 chars]; + "-------------------------------------------------------------"+[464 chars]; + "-------------------------------------------------------------"+[471 chars]; + "-------------------------------------------------------------"+[478 chars]; + "-------------------------------------------------------------"+[485 chars]; + "-------------------------------------------------------------"+[492 chars]; + "-------------------------------------------------------------"+[499 chars]; + "-------------------------------------------------------------"+[506 chars]; + "-------------------------------------------------------------"+[513 chars]; + "-------------------------------------------------------------"+[520 chars]; + "-------------------------------------------------------------"+[527 chars]; + "-------------------------------------------------------------"+[534 chars]; + "-------------------------------------------------------------"+[541 chars]; + "-------------------------------------------------------------"+[548 chars]; + "-------------------------------------------------------------"+[555 chars]; + "-------------------------------------------------------------"+[562 chars]; + "-------------------------------------------------------------"+[569 chars]; + "-------------------------------------------------------------"+[576 chars]; + "-------------------------------------------------------------"+[583 chars]; + "-------------------------------------------------------------"+[590 chars]; + "-------------------------------------------------------------"+[597 chars]; + "-------------------------------------------------------------"+[604 chars]; + "-------------------------------------------------------------"+[611 chars]; + "-------------------------------------------------------------"+[618 chars]; + "-------------------------------------------------------------"+[625 chars]; + "-------------------------------------------------------------"+[632 chars]|] +val grids: string[,] = + [[""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; + ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; + ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""; ""] + [""; "-"; "--"; "---"; "----"; "-----"; "------"; "-------"; "--------"; + "---------"; "----------"; "-----------"; "------------"; "-------------"; + "--------------"; "---------------"; "----------------"; + "-----------------"; "------------------"; "-------------------"; + "--------------------"; "---------------------"; "----------------------"; + "-----------------------"; "------------------------"; + "-------------------------"; "--------------------------"; + "---------------------------"; "----------------------------"; + "-----------------------------"; "------------------------------"; + "-------------------------------"; "--------------------------------"; + "---------------------------------"; "----------------------------------"; + "-----------------------------------"; + "------------------------------------"; + "-------------------------------------"; + "--------------------------------------"; + "---------------------------------------"; + "----------------------------------------"; + "-----------------------------------------"; + "------------------------------------------"; + "-------------------------------------------"; + "--------------------------------------------"; + "---------------------------------------------"; + "----------------------------------------------"; + "-----------------------------------------------"; + "------------------------------------------------"; + "-------------------------------------------------"] + [""; "--"; "----"; "------"; "--------"; "----------"; "------------"; + "--------------"; "----------------"; "------------------"; + "--------------------"; "----------------------"; + "------------------------"; "--------------------------"; + "----------------------------"; "------------------------------"; + "--------------------------------"; "----------------------------------"; + "------------------------------------"; + "--------------------------------------"; + "----------------------------------------"; + "------------------------------------------"; + "--------------------------------------------"; + "----------------------------------------------"; + "------------------------------------------------"; + "--------------------------------------------------"; + "----------------------------------------------------"; + "------------------------------------------------------"; + "--------------------------------------------------------"; + "----------------------------------------------------------"; + "------------------------------------------------------------"; + "--------------------------------------------------------------"; + "----------------------------------------------------------------"; + "------------------------------------------------------------------"; + "--------------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[13 chars]; + "-------------------------------------------------------------"+[15 chars]; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[21 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[25 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[31 chars]; + "-------------------------------------------------------------"+[33 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[37 chars]] + [""; "---"; "------"; "---------"; "------------"; "---------------"; + "------------------"; "---------------------"; "------------------------"; + "---------------------------"; "------------------------------"; + "---------------------------------"; + "------------------------------------"; + "---------------------------------------"; + "------------------------------------------"; + "---------------------------------------------"; + "------------------------------------------------"; + "---------------------------------------------------"; + "------------------------------------------------------"; + "---------------------------------------------------------"; + "------------------------------------------------------------"; + "---------------------------------------------------------------"; + "------------------------------------------------------------------"; + "---------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[14 chars]; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[20 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[26 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[32 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[38 chars]; + "-------------------------------------------------------------"+[41 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[50 chars]; + "-------------------------------------------------------------"+[53 chars]; + "-------------------------------------------------------------"+[56 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[62 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[68 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[74 chars]; + "-------------------------------------------------------------"+[77 chars]; + "-------------------------------------------------------------"+[80 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[86 chars]] + [""; "----"; "--------"; "------------"; "----------------"; + "--------------------"; "------------------------"; + "----------------------------"; "--------------------------------"; + "------------------------------------"; + "----------------------------------------"; + "--------------------------------------------"; + "------------------------------------------------"; + "----------------------------------------------------"; + "--------------------------------------------------------"; + "------------------------------------------------------------"; + "----------------------------------------------------------------"; + "--------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[15 chars]; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[31 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[39 chars]; + "-------------------------------------------------------------"+[43 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[55 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[63 chars]; + "-------------------------------------------------------------"+[67 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[75 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[87 chars]; + "-------------------------------------------------------------"+[91 chars]; + "-------------------------------------------------------------"+[95 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[103 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[111 chars]; + "-------------------------------------------------------------"+[115 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[123 chars]; + "-------------------------------------------------------------"+[127 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[135 chars]] + [""; "-----"; "----------"; "---------------"; "--------------------"; + "-------------------------"; "------------------------------"; + "-----------------------------------"; + "----------------------------------------"; + "---------------------------------------------"; + "--------------------------------------------------"; + "-------------------------------------------------------"; + "------------------------------------------------------------"; + "-----------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[14 chars]; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[24 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[34 chars]; + "-------------------------------------------------------------"+[39 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[49 chars]; + "-------------------------------------------------------------"+[54 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[64 chars]; + "-------------------------------------------------------------"+[69 chars]; + "-------------------------------------------------------------"+[74 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[84 chars]; + "-------------------------------------------------------------"+[89 chars]; + "-------------------------------------------------------------"+[94 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[104 chars]; + "-------------------------------------------------------------"+[109 chars]; + "-------------------------------------------------------------"+[114 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[124 chars]; + "-------------------------------------------------------------"+[129 chars]; + "-------------------------------------------------------------"+[134 chars]; + "-------------------------------------------------------------"+[139 chars]; + "-------------------------------------------------------------"+[144 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[154 chars]; + "-------------------------------------------------------------"+[159 chars]; + "-------------------------------------------------------------"+[164 chars]; + "-------------------------------------------------------------"+[169 chars]; + "-------------------------------------------------------------"+[174 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[184 chars]] + [""; "------"; "------------"; "------------------"; + "------------------------"; "------------------------------"; + "------------------------------------"; + "------------------------------------------"; + "------------------------------------------------"; + "------------------------------------------------------"; + "------------------------------------------------------------"; + "------------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[41 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[53 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[77 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[89 chars]; + "-------------------------------------------------------------"+[95 chars]; + "-------------------------------------------------------------"+[101 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[113 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[125 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[137 chars]; + "-------------------------------------------------------------"+[143 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[161 chars]; + "-------------------------------------------------------------"+[167 chars]; + "-------------------------------------------------------------"+[173 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[185 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[197 chars]; + "-------------------------------------------------------------"+[203 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[215 chars]; + "-------------------------------------------------------------"+[221 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[233 chars]] + [""; "-------"; "--------------"; "---------------------"; + "----------------------------"; "-----------------------------------"; + "------------------------------------------"; + "-------------------------------------------------"; + "--------------------------------------------------------"; + "---------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[58 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[72 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[86 chars]; + "-------------------------------------------------------------"+[93 chars]; + "-------------------------------------------------------------"+[100 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[114 chars]; + "-------------------------------------------------------------"+[121 chars]; + "-------------------------------------------------------------"+[128 chars]; + "-------------------------------------------------------------"+[135 chars]; + "-------------------------------------------------------------"+[142 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[156 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[170 chars]; + "-------------------------------------------------------------"+[177 chars]; + "-------------------------------------------------------------"+[184 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[198 chars]; + "-------------------------------------------------------------"+[205 chars]; + "-------------------------------------------------------------"+[212 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[226 chars]; + "-------------------------------------------------------------"+[233 chars]; + "-------------------------------------------------------------"+[240 chars]; + "-------------------------------------------------------------"+[247 chars]; + "-------------------------------------------------------------"+[254 chars]; + "-------------------------------------------------------------"+[261 chars]; + "-------------------------------------------------------------"+[268 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[282 chars]] + [""; "--------"; "----------------"; "------------------------"; + "--------------------------------"; + "----------------------------------------"; + "------------------------------------------------"; + "--------------------------------------------------------"; + "----------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[43 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[67 chars]; + "-------------------------------------------------------------"+[75 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[91 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[115 chars]; + "-------------------------------------------------------------"+[123 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[139 chars]; + "-------------------------------------------------------------"+[147 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[171 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[187 chars]; + "-------------------------------------------------------------"+[195 chars]; + "-------------------------------------------------------------"+[203 chars]; + "-------------------------------------------------------------"+[211 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[235 chars]; + "-------------------------------------------------------------"+[243 chars]; + "-------------------------------------------------------------"+[251 chars]; + "-------------------------------------------------------------"+[259 chars]; + "-------------------------------------------------------------"+[267 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[283 chars]; + "-------------------------------------------------------------"+[291 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[307 chars]; + "-------------------------------------------------------------"+[315 chars]; + "-------------------------------------------------------------"+[323 chars]; + "-------------------------------------------------------------"+[331 chars]] + [""; "---------"; "------------------"; "---------------------------"; + "------------------------------------"; + "---------------------------------------------"; + "------------------------------------------------------"; + "---------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[20 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[38 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[56 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[74 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[92 chars]; + "-------------------------------------------------------------"+[101 chars]; + "-------------------------------------------------------------"+[110 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[128 chars]; + "-------------------------------------------------------------"+[137 chars]; + "-------------------------------------------------------------"+[146 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[164 chars]; + "-------------------------------------------------------------"+[173 chars]; + "-------------------------------------------------------------"+[182 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[200 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[218 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[236 chars]; + "-------------------------------------------------------------"+[245 chars]; + "-------------------------------------------------------------"+[254 chars]; + "-------------------------------------------------------------"+[263 chars]; + "-------------------------------------------------------------"+[272 chars]; + "-------------------------------------------------------------"+[281 chars]; + "-------------------------------------------------------------"+[290 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[308 chars]; + "-------------------------------------------------------------"+[317 chars]; + "-------------------------------------------------------------"+[326 chars]; + "-------------------------------------------------------------"+[335 chars]; + "-------------------------------------------------------------"+[344 chars]; + "-------------------------------------------------------------"+[353 chars]; + "-------------------------------------------------------------"+[362 chars]; + "-------------------------------------------------------------"+[371 chars]; + "-------------------------------------------------------------"+[380 chars]] + [""; "----------"; "--------------------"; "------------------------------"; + "----------------------------------------"; + "--------------------------------------------------"; + "------------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[39 chars]; + "-------------------------------------------------------------"+[49 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[69 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[89 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[109 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[129 chars]; + "-------------------------------------------------------------"+[139 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[159 chars]; + "-------------------------------------------------------------"+[169 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[189 chars]; + "-------------------------------------------------------------"+[199 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[229 chars]; + "-------------------------------------------------------------"+[239 chars]; + "-------------------------------------------------------------"+[249 chars]; + "-------------------------------------------------------------"+[259 chars]; + "-------------------------------------------------------------"+[269 chars]; + "-------------------------------------------------------------"+[279 chars]; + "-------------------------------------------------------------"+[289 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[309 chars]; + "-------------------------------------------------------------"+[319 chars]; + "-------------------------------------------------------------"+[329 chars]; + "-------------------------------------------------------------"+[339 chars]; + "-------------------------------------------------------------"+[349 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[369 chars]; + "-------------------------------------------------------------"+[379 chars]; + "-------------------------------------------------------------"+[389 chars]; + "-------------------------------------------------------------"+[399 chars]; + "-------------------------------------------------------------"+[409 chars]; + "-------------------------------------------------------------"+[419 chars]; + "-------------------------------------------------------------"+[429 chars]] + [""; "-----------"; "----------------------"; + "---------------------------------"; + "--------------------------------------------"; + "-------------------------------------------------------"; + "------------------------------------------------------------------"; + "-------------------------------------------------------------"+[16 chars]; + "-------------------------------------------------------------"+[27 chars]; + "-------------------------------------------------------------"+[38 chars]; + "-------------------------------------------------------------"+[49 chars]; + "-------------------------------------------------------------"+[60 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[82 chars]; + "-------------------------------------------------------------"+[93 chars]; + "-------------------------------------------------------------"+[104 chars]; + "-------------------------------------------------------------"+[115 chars]; + "-------------------------------------------------------------"+[126 chars]; + "-------------------------------------------------------------"+[137 chars]; + "-------------------------------------------------------------"+[148 chars]; + "-------------------------------------------------------------"+[159 chars]; + "-------------------------------------------------------------"+[170 chars]; + "-------------------------------------------------------------"+[181 chars]; + "-------------------------------------------------------------"+[192 chars]; + "-------------------------------------------------------------"+[203 chars]; + "-------------------------------------------------------------"+[214 chars]; + "-------------------------------------------------------------"+[225 chars]; + "-------------------------------------------------------------"+[236 chars]; + "-------------------------------------------------------------"+[247 chars]; + "-------------------------------------------------------------"+[258 chars]; + "-------------------------------------------------------------"+[269 chars]; + "-------------------------------------------------------------"+[280 chars]; + "-------------------------------------------------------------"+[291 chars]; + "-------------------------------------------------------------"+[302 chars]; + "-------------------------------------------------------------"+[313 chars]; + "-------------------------------------------------------------"+[324 chars]; + "-------------------------------------------------------------"+[335 chars]; + "-------------------------------------------------------------"+[346 chars]; + "-------------------------------------------------------------"+[357 chars]; + "-------------------------------------------------------------"+[368 chars]; + "-------------------------------------------------------------"+[379 chars]; + "-------------------------------------------------------------"+[390 chars]; + "-------------------------------------------------------------"+[401 chars]; + "-------------------------------------------------------------"+[412 chars]; + "-------------------------------------------------------------"+[423 chars]; + "-------------------------------------------------------------"+[434 chars]; + "-------------------------------------------------------------"+[445 chars]; + "-------------------------------------------------------------"+[456 chars]; + "-------------------------------------------------------------"+[467 chars]; + "-------------------------------------------------------------"+[478 chars]] + [""; "------------"; "------------------------"; + "------------------------------------"; + "------------------------------------------------"; + "------------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[71 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[95 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[143 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[167 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[203 chars]; + "-------------------------------------------------------------"+[215 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[239 chars]; + "-------------------------------------------------------------"+[251 chars]; + "-------------------------------------------------------------"+[263 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[287 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[311 chars]; + "-------------------------------------------------------------"+[323 chars]; + "-------------------------------------------------------------"+[335 chars]; + "-------------------------------------------------------------"+[347 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[371 chars]; + "-------------------------------------------------------------"+[383 chars]; + "-------------------------------------------------------------"+[395 chars]; + "-------------------------------------------------------------"+[407 chars]; + "-------------------------------------------------------------"+[419 chars]; + "-------------------------------------------------------------"+[431 chars]; + "-------------------------------------------------------------"+[443 chars]; + "-------------------------------------------------------------"+[455 chars]; + "-------------------------------------------------------------"+[467 chars]; + "-------------------------------------------------------------"+[479 chars]; + "-------------------------------------------------------------"+[491 chars]; + "-------------------------------------------------------------"+[503 chars]; + "-------------------------------------------------------------"+[515 chars]; + "-------------------------------------------------------------"+[527 chars]] + [""; "-------------"; "--------------------------"; + "---------------------------------------"; + "----------------------------------------------------"; + "-----------------------------------------------------------------"; + "-------------------------------------------------------------"+[17 chars]; + "-------------------------------------------------------------"+[30 chars]; + "-------------------------------------------------------------"+[43 chars]; + "-------------------------------------------------------------"+[56 chars]; + "-------------------------------------------------------------"+[69 chars]; + "-------------------------------------------------------------"+[82 chars]; + "-------------------------------------------------------------"+[95 chars]; + "-------------------------------------------------------------"+[108 chars]; + "-------------------------------------------------------------"+[121 chars]; + "-------------------------------------------------------------"+[134 chars]; + "-------------------------------------------------------------"+[147 chars]; + "-------------------------------------------------------------"+[160 chars]; + "-------------------------------------------------------------"+[173 chars]; + "-------------------------------------------------------------"+[186 chars]; + "-------------------------------------------------------------"+[199 chars]; + "-------------------------------------------------------------"+[212 chars]; + "-------------------------------------------------------------"+[225 chars]; + "-------------------------------------------------------------"+[238 chars]; + "-------------------------------------------------------------"+[251 chars]; + "-------------------------------------------------------------"+[264 chars]; + "-------------------------------------------------------------"+[277 chars]; + "-------------------------------------------------------------"+[290 chars]; + "-------------------------------------------------------------"+[303 chars]; + "-------------------------------------------------------------"+[316 chars]; + "-------------------------------------------------------------"+[329 chars]; + "-------------------------------------------------------------"+[342 chars]; + "-------------------------------------------------------------"+[355 chars]; + "-------------------------------------------------------------"+[368 chars]; + "-------------------------------------------------------------"+[381 chars]; + "-------------------------------------------------------------"+[394 chars]; + "-------------------------------------------------------------"+[407 chars]; + "-------------------------------------------------------------"+[420 chars]; + "-------------------------------------------------------------"+[433 chars]; + "-------------------------------------------------------------"+[446 chars]; + "-------------------------------------------------------------"+[459 chars]; + "-------------------------------------------------------------"+[472 chars]; + "-------------------------------------------------------------"+[485 chars]; + "-------------------------------------------------------------"+[498 chars]; + "-------------------------------------------------------------"+[511 chars]; + "-------------------------------------------------------------"+[524 chars]; + "-------------------------------------------------------------"+[537 chars]; + "-------------------------------------------------------------"+[550 chars]; + "-------------------------------------------------------------"+[563 chars]; + "-------------------------------------------------------------"+[576 chars]] + [""; "--------------"; "----------------------------"; + "------------------------------------------"; + "--------------------------------------------------------"; + "----------------------------------------------------------------------"; + "-------------------------------------------------------------"+[23 chars]; + "-------------------------------------------------------------"+[37 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[79 chars]; + "-------------------------------------------------------------"+[93 chars]; + "-------------------------------------------------------------"+[107 chars]; + "-------------------------------------------------------------"+[121 chars]; + "-------------------------------------------------------------"+[135 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[177 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[205 chars]; + "-------------------------------------------------------------"+[219 chars]; + "-------------------------------------------------------------"+[233 chars]; + "-------------------------------------------------------------"+[247 chars]; + "-------------------------------------------------------------"+[261 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[289 chars]; + "-------------------------------------------------------------"+[303 chars]; + "-------------------------------------------------------------"+[317 chars]; + "-------------------------------------------------------------"+[331 chars]; + "-------------------------------------------------------------"+[345 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[373 chars]; + "-------------------------------------------------------------"+[387 chars]; + "-------------------------------------------------------------"+[401 chars]; + "-------------------------------------------------------------"+[415 chars]; + "-------------------------------------------------------------"+[429 chars]; + "-------------------------------------------------------------"+[443 chars]; + "-------------------------------------------------------------"+[457 chars]; + "-------------------------------------------------------------"+[471 chars]; + "-------------------------------------------------------------"+[485 chars]; + "-------------------------------------------------------------"+[499 chars]; + "-------------------------------------------------------------"+[513 chars]; + "-------------------------------------------------------------"+[527 chars]; + "-------------------------------------------------------------"+[541 chars]; + "-------------------------------------------------------------"+[555 chars]; + "-------------------------------------------------------------"+[569 chars]; + "-------------------------------------------------------------"+[583 chars]; + "-------------------------------------------------------------"+[597 chars]; + "-------------------------------------------------------------"+[611 chars]; + "-------------------------------------------------------------"+[625 chars]] + [""; "---------------"; "------------------------------"; + "---------------------------------------------"; + "------------------------------------------------------------"; + "-------------------------------------------------------------"+[14 chars]; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[44 chars]; + "-------------------------------------------------------------"+[59 chars]; + "-------------------------------------------------------------"+[74 chars]; + "-------------------------------------------------------------"+[89 chars]; + "-------------------------------------------------------------"+[104 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[134 chars]; + "-------------------------------------------------------------"+[149 chars]; + "-------------------------------------------------------------"+[164 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[194 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[224 chars]; + "-------------------------------------------------------------"+[239 chars]; + "-------------------------------------------------------------"+[254 chars]; + "-------------------------------------------------------------"+[269 chars]; + "-------------------------------------------------------------"+[284 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[314 chars]; + "-------------------------------------------------------------"+[329 chars]; + "-------------------------------------------------------------"+[344 chars]; + "-------------------------------------------------------------"+[359 chars]; + "-------------------------------------------------------------"+[374 chars]; + "-------------------------------------------------------------"+[389 chars]; + "-------------------------------------------------------------"+[404 chars]; + "-------------------------------------------------------------"+[419 chars]; + "-------------------------------------------------------------"+[434 chars]; + "-------------------------------------------------------------"+[449 chars]; + "-------------------------------------------------------------"+[464 chars]; + "-------------------------------------------------------------"+[479 chars]; + "-------------------------------------------------------------"+[494 chars]; + "-------------------------------------------------------------"+[509 chars]; + "-------------------------------------------------------------"+[524 chars]; + "-------------------------------------------------------------"+[539 chars]; + "-------------------------------------------------------------"+[554 chars]; + "-------------------------------------------------------------"+[569 chars]; + "-------------------------------------------------------------"+[584 chars]; + "-------------------------------------------------------------"+[599 chars]; + "-------------------------------------------------------------"+[614 chars]; + "-------------------------------------------------------------"+[629 chars]; + "-------------------------------------------------------------"+[644 chars]; + "-------------------------------------------------------------"+[659 chars]; + "-------------------------------------------------------------"+[674 chars]] + [""; "----------------"; "--------------------------------"; + "------------------------------------------------"; + "----------------------------------------------------------------"; + "-------------------------------------------------------------"+[19 chars]; + "-------------------------------------------------------------"+[35 chars]; + "-------------------------------------------------------------"+[51 chars]; + "-------------------------------------------------------------"+[67 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[99 chars]; + "-------------------------------------------------------------"+[115 chars]; + "-------------------------------------------------------------"+[131 chars]; + "-------------------------------------------------------------"+[147 chars]; + "-------------------------------------------------------------"+[163 chars]; + "-------------------------------------------------------------"+[179 chars]; + "-------------------------------------------------------------"+[195 chars]; + "-------------------------------------------------------------"+[211 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[243 chars]; + "-------------------------------------------------------------"+[259 chars]; + "-------------------------------------------------------------"+[275 chars]; + "-------------------------------------------------------------"+[291 chars]; + "-------------------------------------------------------------"+[307 chars]; + "-------------------------------------------------------------"+[323 chars]; + "-------------------------------------------------------------"+[339 chars]; + "-------------------------------------------------------------"+[355 chars]; + "-------------------------------------------------------------"+[371 chars]; + "-------------------------------------------------------------"+[387 chars]; + "-------------------------------------------------------------"+[403 chars]; + "-------------------------------------------------------------"+[419 chars]; + "-------------------------------------------------------------"+[435 chars]; + "-------------------------------------------------------------"+[451 chars]; + "-------------------------------------------------------------"+[467 chars]; + "-------------------------------------------------------------"+[483 chars]; + "-------------------------------------------------------------"+[499 chars]; + "-------------------------------------------------------------"+[515 chars]; + "-------------------------------------------------------------"+[531 chars]; + "-------------------------------------------------------------"+[547 chars]; + "-------------------------------------------------------------"+[563 chars]; + "-------------------------------------------------------------"+[579 chars]; + "-------------------------------------------------------------"+[595 chars]; + "-------------------------------------------------------------"+[611 chars]; + "-------------------------------------------------------------"+[627 chars]; + "-------------------------------------------------------------"+[643 chars]; + "-------------------------------------------------------------"+[659 chars]; + "-------------------------------------------------------------"+[675 chars]; + "-------------------------------------------------------------"+[691 chars]; + "-------------------------------------------------------------"+[707 chars]; + "-------------------------------------------------------------"+[723 chars]] + [""; "-----------------"; "----------------------------------"; + "---------------------------------------------------"; + "--------------------------------------------------------------------"; + "-------------------------------------------------------------"+[24 chars]; + "-------------------------------------------------------------"+[41 chars]; + "-------------------------------------------------------------"+[58 chars]; + "-------------------------------------------------------------"+[75 chars]; + "-------------------------------------------------------------"+[92 chars]; + "-------------------------------------------------------------"+[109 chars]; + "-------------------------------------------------------------"+[126 chars]; + "-------------------------------------------------------------"+[143 chars]; + "-------------------------------------------------------------"+[160 chars]; + "-------------------------------------------------------------"+[177 chars]; + "-------------------------------------------------------------"+[194 chars]; + "-------------------------------------------------------------"+[211 chars]; + "-------------------------------------------------------------"+[228 chars]; + "-------------------------------------------------------------"+[245 chars]; + "-------------------------------------------------------------"+[262 chars]; + "-------------------------------------------------------------"+[279 chars]; + "-------------------------------------------------------------"+[296 chars]; + "-------------------------------------------------------------"+[313 chars]; + "-------------------------------------------------------------"+[330 chars]; + "-------------------------------------------------------------"+[347 chars]; + "-------------------------------------------------------------"+[364 chars]; + "-------------------------------------------------------------"+[381 chars]; + "-------------------------------------------------------------"+[398 chars]; + "-------------------------------------------------------------"+[415 chars]; + "-------------------------------------------------------------"+[432 chars]; + "-------------------------------------------------------------"+[449 chars]; + "-------------------------------------------------------------"+[466 chars]; + "-------------------------------------------------------------"+[483 chars]; + "-------------------------------------------------------------"+[500 chars]; + "-------------------------------------------------------------"+[517 chars]; + "-------------------------------------------------------------"+[534 chars]; + "-------------------------------------------------------------"+[551 chars]; + "-------------------------------------------------------------"+[568 chars]; + "-------------------------------------------------------------"+[585 chars]; + "-------------------------------------------------------------"+[602 chars]; + "-------------------------------------------------------------"+[619 chars]; + "-------------------------------------------------------------"+[636 chars]; + "-------------------------------------------------------------"+[653 chars]; + "-------------------------------------------------------------"+[670 chars]; + "-------------------------------------------------------------"+[687 chars]; + "-------------------------------------------------------------"+[704 chars]; + "-------------------------------------------------------------"+[721 chars]; + "-------------------------------------------------------------"+[738 chars]; + "-------------------------------------------------------------"+[755 chars]; + "-------------------------------------------------------------"+[772 chars]] + [""; "------------------"; "------------------------------------"; + "------------------------------------------------------"; + "------------------------------------------------------------------------"; + "-------------------------------------------------------------"+[29 chars]; + "-------------------------------------------------------------"+[47 chars]; + "-------------------------------------------------------------"+[65 chars]; + "-------------------------------------------------------------"+[83 chars]; + "-------------------------------------------------------------"+[101 chars]; + "-------------------------------------------------------------"+[119 chars]; + "-------------------------------------------------------------"+[137 chars]; + "-------------------------------------------------------------"+[155 chars]; + "-------------------------------------------------------------"+[173 chars]; + "-------------------------------------------------------------"+[191 chars]; + "-------------------------------------------------------------"+[209 chars]; + "-------------------------------------------------------------"+[227 chars]; + "-------------------------------------------------------------"+[245 chars]; + "-------------------------------------------------------------"+[263 chars]; + "-------------------------------------------------------------"+[281 chars]; + "-------------------------------------------------------------"+[299 chars]; + "-------------------------------------------------------------"+[317 chars]; + "-------------------------------------------------------------"+[335 chars]; + "-------------------------------------------------------------"+[353 chars]; + "-------------------------------------------------------------"+[371 chars]; + "-------------------------------------------------------------"+[389 chars]; + "-------------------------------------------------------------"+[407 chars]; + "-------------------------------------------------------------"+[425 chars]; + "-------------------------------------------------------------"+[443 chars]; + "-------------------------------------------------------------"+[461 chars]; + "-------------------------------------------------------------"+[479 chars]; + "-------------------------------------------------------------"+[497 chars]; + "-------------------------------------------------------------"+[515 chars]; + "-------------------------------------------------------------"+[533 chars]; + "-------------------------------------------------------------"+[551 chars]; + "-------------------------------------------------------------"+[569 chars]; + "-------------------------------------------------------------"+[587 chars]; + "-------------------------------------------------------------"+[605 chars]; + "-------------------------------------------------------------"+[623 chars]; + "-------------------------------------------------------------"+[641 chars]; + "-------------------------------------------------------------"+[659 chars]; + "-------------------------------------------------------------"+[677 chars]; + "-------------------------------------------------------------"+[695 chars]; + "-------------------------------------------------------------"+[713 chars]; + "-------------------------------------------------------------"+[731 chars]; + "-------------------------------------------------------------"+[749 chars]; + "-------------------------------------------------------------"+[767 chars]; + "-------------------------------------------------------------"+[785 chars]; + "-------------------------------------------------------------"+[803 chars]; + "-------------------------------------------------------------"+[821 chars]] + [""; "-------------------"; "--------------------------------------"; + "---------------------------------------------------------"; + "-------------------------------------------------------------"+[15 chars]; + "-------------------------------------------------------------"+[34 chars]; + "-------------------------------------------------------------"+[53 chars]; + "-------------------------------------------------------------"+[72 chars]; + "-------------------------------------------------------------"+[91 chars]; + "-------------------------------------------------------------"+[110 chars]; + "-------------------------------------------------------------"+[129 chars]; + "-------------------------------------------------------------"+[148 chars]; + "-------------------------------------------------------------"+[167 chars]; + "-------------------------------------------------------------"+[186 chars]; + "-------------------------------------------------------------"+[205 chars]; + "-------------------------------------------------------------"+[224 chars]; + "-------------------------------------------------------------"+[243 chars]; + "-------------------------------------------------------------"+[262 chars]; + "-------------------------------------------------------------"+[281 chars]; + "-------------------------------------------------------------"+[300 chars]; + "-------------------------------------------------------------"+[319 chars]; + "-------------------------------------------------------------"+[338 chars]; + "-------------------------------------------------------------"+[357 chars]; + "-------------------------------------------------------------"+[376 chars]; + "-------------------------------------------------------------"+[395 chars]; + "-------------------------------------------------------------"+[414 chars]; + "-------------------------------------------------------------"+[433 chars]; + "-------------------------------------------------------------"+[452 chars]; + "-------------------------------------------------------------"+[471 chars]; + "-------------------------------------------------------------"+[490 chars]; + "-------------------------------------------------------------"+[509 chars]; + "-------------------------------------------------------------"+[528 chars]; + "-------------------------------------------------------------"+[547 chars]; + "-------------------------------------------------------------"+[566 chars]; + "-------------------------------------------------------------"+[585 chars]; + "-------------------------------------------------------------"+[604 chars]; + "-------------------------------------------------------------"+[623 chars]; + "-------------------------------------------------------------"+[642 chars]; + "-------------------------------------------------------------"+[661 chars]; + "-------------------------------------------------------------"+[680 chars]; + "-------------------------------------------------------------"+[699 chars]; + "-------------------------------------------------------------"+[718 chars]; + "-------------------------------------------------------------"+[737 chars]; + "-------------------------------------------------------------"+[756 chars]; + "-------------------------------------------------------------"+[775 chars]; + "-------------------------------------------------------------"+[794 chars]; + "-------------------------------------------------------------"+[813 chars]; + "-------------------------------------------------------------"+[832 chars]; + "-------------------------------------------------------------"+[851 chars]; + "-------------------------------------------------------------"+[870 chars]; + ...] + ...] + +> type tree = + | L + | N of tree list +val mkT: w: int -> d: int -> tree +val tree: w: int -> d: int -> tree + +> [Building 2 4...done] +val tree_2_4: tree = + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]] + +> [Building 2 6...done] +val tree_2_6: tree = + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]] + +> [Building 2 8...done] +val tree_2_8: tree = + N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]] + +> [Building 2 10...done] +val tree_2_10: tree = + N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]]; + N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N ...; ...]; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...] + +> [Building 2 12...done] +val tree_2_12: tree = + N [N [N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]]; + N [N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; ...]; ...]; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 2 14...done] +val tree_2_14: tree = + N [N [N [N [N [N [N [N [N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]]]; + N [N [N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]]; + N [N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]]; + N [N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]]; + N [N [N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]; + N [N [N [L; L]; N [L; L]]; + N [N [L; L]; N [L; L]]]]; + N [N [N ...; ...]; ...]; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 3 8...done] +val tree_3_8: tree = + N [N [N [N [N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]]; + N [N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]]; + N [N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]; + N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; L; L]]]]; + N [N [N [N [L; L; L]; N [L; L; L]; N [L; L; L]]; + N [N [L; L; L]; N [L; L; L]; N [L; ...]; ...]; ...]; ...]; + ...]; ...]; ...]; ...] + +> [Building 4 8...done] +val tree_4_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]]; + N [N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]]; + N [N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]]; + N [N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; L]; + N [L; L; L; L]]; + N [N [L; L; L; L]; N [L; L; L; L]; N [L; L; L; ...]; ...]; + ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 5 8...done] +val tree_5_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]]; + N [N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]]; + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N ...; ...]; ...]; ...]; ...]; ...]; + ...]; ...] + +> [Building 6 8...done] +val tree_6_8: tree = + N [N [N [N [N [N [N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]]; + N [N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]]; + N [N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]]; + N [N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]; + N [L; L; L; L; L; L]; N [L; L; L; L; L; L]]; + N [N ...; ...]; ...]; ...]; ...]; ...]; ...]; ...] + +> [Building 5 3...done] +val tree_5_3: tree = + N [N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]; + N [N [L; L; L; L; L]; N [L; L; L; L; L]; N [L; L; L; L; L]; + N [L; L; L; L; L]; N [L; L; L; L; L]]] + +> > type X = + | Var of int + | Bop of int * X * X +val generate: x: int -> X + +> val exps: X list = + [Bop (1, Var 0, Var 0); Var 2; + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)); Var 4; + Bop (5, Var 2, Bop (1, Var 0, Var 0)); Var 6; + Bop (7, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)), Var 2); + Var 8; + Bop (9, Var 4, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0))); + Var 10; + Bop + (213, Var 106, + Bop + (71, + Bop + (35, Bop (17, Var 8, Bop (5, Var 2, Bop (1, Var 0, Var 0))), + Bop + (11, Bop (5, Var 2, Bop (1, Var 0, Var 0)), + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)))), + Bop + (23, + Bop + (11, Bop (5, Var 2, Bop (1, Var 0, Var 0)), + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0))), + Bop + (7, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)), Var 2)))); + Var 21342314; Var 3214; Bop (1231357, Var 615678, Var 410452); + Bop + (5234547, Bop (2617273, Var 1308636, Var 872424), + Bop (1744849, Var 872424, Var 581616)); + Bop + (923759825, Var 461879912, Bop (307919941, Var 153959970, Var 102639980)); + Var 2435234; + Bop + (12396777, Var 6198388, + Bop + (4132259, + Bop + (2066129, Var 1033064, + Bop + (688709, Var 344354, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502))))), + Bop + (1377419, + Bop + (688709, Var 344354, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502)))), + Bop + (459139, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502))), + Var 153046)))); + Bop + (3333333, Var 1666666, + Bop + (1111111, + Bop + (555555, Bop (277777, Var 138888, Var 92592), + Bop (185185, Var 92592, Var 61728)), Var 370370)); + Bop + (1312311237, Var 656155618, + Bop + (437437079, + Bop + (218718539, + Bop + (109359269, Var 54679634, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38))), + Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114)))), + Bop + (72906179, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38))), + Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114))), + Bop (24302059, Bop (12151029, ..., ...), ...))), ...)); ...] + +> module Exprs = + val x1: X = + Bop + (213, Var 106, + Bop + (71, + Bop + (35, Bop (17, Var 8, Bop (5, Var 2, Bop (1, Var 0, Var 0))), + Bop + (11, Bop (5, Var 2, Bop (1, Var 0, Var 0)), + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)))), + Bop + (23, + Bop + (11, Bop (5, Var 2, Bop (1, Var 0, Var 0)), + Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0))), + Bop + (7, Bop (3, Bop (1, Var 0, Var 0), Bop (1, Var 0, Var 0)), + Var 2)))) + val x2: X = Var 21342314 + val x3: X = Var 3214 + val x4: X = Bop (1231357, Var 615678, Var 410452) + val x5: X = + Bop + (5234547, Bop (2617273, Var 1308636, Var 872424), + Bop (1744849, Var 872424, Var 581616)) + val x6: X = + Bop + (923759825, Var 461879912, Bop (307919941, Var 153959970, Var 102639980)) + val x7: X = Var 2435234 + val x8: X = + Bop + (12396777, Var 6198388, + Bop + (4132259, + Bop + (2066129, Var 1033064, + Bop + (688709, Var 344354, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502))))), + Bop + (1377419, + Bop + (688709, Var 344354, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502)))), + Bop + (459139, + Bop + (229569, Var 114784, + Bop + (76523, + Bop + (38261, Var 19130, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472)))), + Bop + (25507, + Bop + (12753, Var 6376, + Bop + (4251, Bop (2125, Var 1062, Var 708), + Bop (1417, Var 708, Var 472))), Var 8502))), + Var 153046)))) + val x9: X = + Bop + (3333333, Var 1666666, + Bop + (1111111, + Bop + (555555, Bop (277777, Var 138888, Var 92592), + Bop (185185, Var 92592, Var 61728)), Var 370370)) + val x10: X = + Bop + (1312311237, Var 656155618, + Bop + (437437079, + Bop + (218718539, + Bop + (109359269, Var 54679634, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop + (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))), Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114)))), + Bop + (72906179, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop + (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))), Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114))), + Bop + (24302059, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop + (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))))), + Var 6250), + Bop + (12501, Var 6250, + Bop + (4167, + Bop + (2083, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6))), + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38))), Var 694), + Bop + (1389, Var 694, + Bop + (463, + Bop + (231, + Bop + (115, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + Bop + (3, + Bop + (1, + Var 0, + Var 0), + Bop + (1, + Var 0, + Var 0))), + Var 6)), + Var 38), + Bop + (77, Var 38, + Bop + (25, Var 12, Var 8))), + Var 154)))))), Var 75006))), + Var 1350114)), Var 8100686))), + Bop + (145812359, + Bop + (72906179, + Bop + (36453089, Var 18226544, + Bop + (12151029, Var 6075514, + Bop + (4050343, + Bop + (2025171, Bop (1012585, Var 506292, Var 337528), + Bop + (675057, Var 337528, + Bop + (225019, + Bop + (112509, Var 56254, + Bop + (37503, + Bop + (18751, + Bop + (9375, + Bop + (4687, + Bop + (2343, + Bop + (1171, + Bop + (585, Var 292, + Bop + (195, + Bop + (97, Var 48, + Var 32), + Bop + (65, Var 32, + Bop + (21, Var 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))), + Var 390), + Bop + (781, Var 390, Var 260)), + Var 1562), + Bop + (3125, Var 1562, + Bop + (1041, Var 520, + Bop + (347, + Bop + (173, Var 86, + Bop + (57, Var 28, + Bop + (19, + Bop + (9, Var 4, + ...), ...))), + ...)))), ...), ...)), + ...))), ...))), ...), ...))) + val x11: X = + Bop + (2147483647, + Bop + (1073741823, + Bop + (536870911, + Bop + (268435455, + Bop + (134217727, + Bop + (67108863, + Bop + (33554431, + Bop + (16777215, + Bop + (8388607, + Bop + (4194303, + Bop + (2097151, + Bop + (1048575, + Bop + (524287, + Bop + (262143, + Bop + (131071, + Bop + (65535, + Bop + (32767, + Bop + (16383, + Bop + (8191, + Bop + (4095, + Bop + (2047, + Bop + (1023, + Bop + (511, + Bop + (255, + Bop + (127, + Bop + (63, + Bop + (31, + Bop + (15, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var + 2), + Bop + (5, + Var + 2, + Bop + (1, + Var + 0, + Var + 0))), + Var + 10), + Bop + (21, + Var + 10, + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var + 2))), + Var + 42), + Bop + (85, + Var + 42, + Var + 28)), + Var + 170), + Bop + (341, + Var + 170, + Bop + (113, + Var + 56, + Bop + (37, + Var + 18, + Var + 12)))), + Var 682), + Bop + (1365, + Var 682, + Bop + (455, + Bop + (227, + Bop + (113, + Var + 56, + Bop + (37, + Var + 18, + Var + 12)), + Bop + (75, + Bop + (37, + Var + 18, + Var + 12), + Bop + (25, + Var + 12, + Var + 8))), + Bop + (151, + Bop + (75, + Bop + (37, + Var + 18, + Var + 12), + Bop + (25, + Var + 12, + Var + 8)), + Var + 50)))), + Var 2730), + Bop + (5461, Var 2730, + Var 1820)), + Var 10922), + Bop + (21845, Var 10922, + Bop + (7281, Var 3640, + Bop + (2427, + Bop + (1213, Var 606, + Var 404), + Bop + (809, Var 404, + Bop + (269, + Var 134, + Bop + (89, + Var 44, + Bop + (29, + Var + 14, + Bop + (9, + Var + 4, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))))))))))), + Var 43690), + Bop + (87381, Var 43690, + Bop + (29127, + Bop + (14563, + Bop + (7281, Var 3640, + Bop + (2427, + Bop + (1213, Var 606, + Var 404), + Bop + (809, Var 404, + Bop + (269, + Var 134, + Bop + (89, + Var 44, + Bop + (29, + Var + 14, + Bop + (9, + Var + 4, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))))))))), + Var 4854), + Bop + (9709, Var 4854, + Var 3236)))), + Var 174762), + Bop (349525, Var 174762, Var 116508)), + Var 699050), + Bop + (1398101, Var 699050, + Bop (466033, Var 233016, Var 155344))), + Var 2796202), + Bop + (5592405, Var 2796202, + Bop + (1864135, + Bop + (932067, + Bop (466033, Var 233016, Var 155344), + Bop + (310689, Var 155344, + Bop + (103563, + Bop (51781, Var 25890, Var 17260), + Bop + (34521, Var 17260, + Bop + (11507, + Bop + (5753, Var 2876, + Bop + (1917, Var 958, + Bop + (639, + Bop + (319, + Bop + (159, + Bop + (79, + Bop + (39, + Bop + (19, + Bop + (9, + Var + 4, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))), + Var 6), + Bop + (13, + Var 6, + Var 4)), + Var 26), + Bop + (53, Var 26, + Bop + (17, + Var 8, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0))))), + Var 106), + Bop + (213, Var 106, + Bop + (71, + Bop + (35, + Bop + (17, + Var 8, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0))), + Bop + (11, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0)), + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)))), + Bop + (23, + Bop + (11, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0)), + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))), + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2))))))), + Bop + (3835, + Bop + (1917, Var 958, + Bop + (639, + Bop + (319, + Bop + (159, + Bop + (79, + Bop + (39, + Bop + (19, + Bop + (9, + Var + 4, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))), + Var 6), + Bop + (13, + Var 6, + Var 4)), + Var 26), + Bop + (53, Var 26, + Bop + (17, + Var 8, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0))))), + Var 106), + Bop + (213, Var 106, + Bop + (71, + Bop + (35, + Bop + (17, + Var 8, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0))), + Bop + (11, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0)), + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)))), + Bop + (23, + Bop + (11, + Bop + (5, + Var 2, + Bop + (1, + Var + 0, + Var + 0)), + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0))), + Bop + (7, + Bop + (3, + Bop + (1, + Var + 0, + Var + 0), + Bop + (1, + Var + 0, + Var + 0)), + Var 2)))))), + Var 1278)))))), Var 621378))), + Var 11184810), + Bop (22369621, Var 11184810, Var 7456540)), Var 44739242), + Bop + (89478485, Var 44739242, + Bop + (29826161, Var 14913080, + Bop + (9942053, Var 4971026, + Bop (3314017, Var 1657008, Var 1104672))))), + Var 178956970), + Bop + (357913941, Var 178956970, + Bop + (119304647, + Bop + (59652323, + Bop + (29826161, Var 14913080, + Bop + (9942053, Var 4971026, + Bop (3314017, Var 1657008, Var 1104672))), + Bop + (19884107, + Bop + (9942053, Var 4971026, + Bop (3314017, Var 1657008, Var 1104672)), + Bop + (6628035, Bop (3314017, Var 1657008, Var 1104672), + Bop (2209345, Var 1104672, Var 736448)))), + Bop + (39768215, + Bop + (19884107, + Bop + (9942053, Var 4971026, + Bop (3314017, Var 1657008, Var 1104672)), + Bop + (6628035, Bop (3314017, Var 1657008, Var 1104672), + Bop (2209345, Var 1104672, Var 736448))), + Bop + (13256071, + Bop + (6628035, Bop (3314017, Var 1657008, Var 1104672), + Bop (2209345, Var 1104672, Var 736448)), Var 4418690))))), + Var 715827882) + +> type C = + new: x: string -> C + override ToString: unit -> string +val c1: C = +val csA: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] +val csB: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] +val csC: C[] = + [|; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; + ; ; ...|] + +> exception Abc + +> exception AbcInt of int + +> exception AbcString of string + +> exception AbcExn of exn list + +> exception AbcException of System.Exception list + +> val exA1: exn = Abc +val exA2: exn = AbcInt 2 +val exA3: exn = AbcString "3" +val exA4: exn = AbcExn [Abc; AbcInt 2; AbcString "3"] +val exA5: exn = AbcException [AbcExn [Abc; AbcInt 2; AbcString "3"]] +exception Ex0 +exception ExUnit of unit +exception ExUnits of unit * unit +exception ExUnitOption of unit option +val ex0: exn = Ex0 +val exU: exn = ExUnit () +val exUs: exn = ExUnits ((), ()) +val exUSome: exn = ExUnitOption (Some ()) +val exUNone: exn = ExUnitOption None +type 'a T4063 = | AT4063 of 'a + +> val valAT3063_12: int T4063 = AT4063 12 + +> val valAT3063_True: bool T4063 = AT4063 true + +> val valAT3063_text: string T4063 = AT4063 "text" + +> val valAT3063_null: System.Object T4063 = AT4063 null + +> type M4063<'a> = + new: x: 'a -> M4063<'a> + +> val v4063: M4063 + +> type Taaaaa<'a> = + new: unit -> Taaaaa<'a> + +> type Taaaaa2<'a> = + inherit Taaaaa<'a> + new: unit -> Taaaaa2<'a> + member M: unit -> Taaaaa2<'a> + +> type Tbbbbb<'a> = + new: x: 'a -> Tbbbbb<'a> + member M: unit -> 'a + +> type Tbbbbb2 = + inherit Tbbbbb + new: x: string -> Tbbbbb2 + +> val it: (unit -> string) = + +> module RepeatedModule = + val repeatedByteLiteral: byte[] = [|12uy; 13uy; 14uy|] + +> module RepeatedModule = + val repeatedByteLiteral: byte[] = [|12uy; 13uy; 14uy|] + +> val it: string = "Check #help" + +> + F# Interactive directives: + + #r "file.dll";; // Reference (dynamically load) the given DLL + #i "package source uri";; // Include package source uri when searching for packages + #I "path";; // Add the given search path for referenced DLLs + #load "file.fs" ...;; // Load the given file(s) as if compiled and referenced + #time ["on"|"off"];; // Toggle timing on/off + #help;; // Display help + #r "nuget:FSharp.Data, 3.1.2";; // Load Nuget Package 'FSharp.Data' version '3.1.2' + #r "nuget:FSharp.Data";; // Load Nuget Package 'FSharp.Data' with the highest version + #quit;; // Exit + + F# Interactive command line options: + + + +> val it: string = "Check #time on and then off" + +> +--> Timing now on + +> +--> Timing now off + +> val it: string = "Check #unknown command" + +> val it: string = + "Check #I with a known directory (to avoid a warning, which includes the location of this file, which is fragile...)" + +> +--> Added '/' to library include path + +> type internal T1 = + | A + | B + +> type internal T2 = + { x: int } + +> type internal T3 + +> type internal T4 = + new: unit -> T4 + +> type T1 = + internal | A + | B + +> type T2 = + internal { x: int } + +> type private T1 = + | A + | B + +> type private T2 = + { x: int } + +> type T1 = + private | A + | B + +> type T2 = + private { x: int } + +> type internal T1 = + private | A + | B + +> type internal T2 = + private { x: int } + +> type private T3 + +> type private T4 = + new: unit -> T4 + +> exception X1 of int + +> exception private X2 of int + +> exception internal X3 of int + +> type T0 = + new: unit -> T0 +type T1Post<'a> = + new: unit -> T1Post<'a> +type 'a T1Pre = + new: unit -> 'a T1Pre + +> type T0 with + member M: unit -> T0 list +type T0 with + member P: T0 * T0 +type T0 with + member E: IEvent + +> type T1Post<'a> with + member M: unit -> T1Post<'a> list +type T1Post<'a> with + member P: T1Post<'a> * T1Post<'a> +type T1Post<'a> with + member E: IEvent + +> type 'a T1Pre with + member M: unit -> 'a T1Pre list +type 'a T1Pre with + member P: 'a T1Pre * 'a T1Pre +type 'a T1Pre with + member E: IEvent + +> type T1Post<'a> with + member M: unit -> T1Post<'a> list +type T1Post<'a> with + member P: T1Post<'a> * T1Post<'a> +type T1Post<'a> with + member E: IEvent + +> type 'a T1Pre with + member M: unit -> 'a T1Pre list +type 'a T1Pre with + member P: 'a T1Pre * 'a T1Pre +type 'a T1Pre with + member E: IEvent + +> type r = + { + f0: int + f1: int + f2: int + f3: int + f4: int + f5: int + f6: int + f7: int + f8: int + f9: int + } +val r10: r = { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 } +val r10s: r[] = + [|{ f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }|] +val r10s': string * r[] = + ("one extra node", + [|{ f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }; + { f0 = 0 + f1 = 1 + f2 = 2 + f3 = 3 + f4 = 4 + f5 = 5 + f6 = 6 + f7 = 7 + f8 = 8 + f9 = 9 }|]) + +> val x1564_A1: int = 1 + + +--> Added '\' to library include path + +val x1564_A2: int = 2 + + +--> Added '\' to library include path + +val x1564_A3: int = 3 + +> type internal Foo2 = + private new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member private Prop3: int + +> module internal InternalM = + val x: int = 1 + type Foo2 = + private new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member private Prop3: int + type private Foo3 = + new: x: int * y: int * z: int -> Foo3 + 3 overloads + member Prop1: int + member Prop2: int + member Prop3: int + type T1 = + | A + | B + type T2 = + { x: int } + type T3 + type T4 = + new: unit -> T4 + type T5 = + | A + | B + type T6 = + { x: int } + type private T7 = + | A + | B + type private T8 = + { x: int } + type T9 = + private | A + | B + type T10 = + private { x: int } + type T11 = + private | A + | B + type T12 = + private { x: int } + type private T13 + type private T14 = + new: unit -> T14 +module internal PrivateM = + val private x: int = 1 + type private Foo2 = + new: x: int * y: int * z: int -> Foo2 + 3 overloads + member Prop1: int + member Prop2: int + member Prop3: int + type T1 = + | A + | B + type T2 = + { x: int } + type T3 + type T4 = + new: unit -> T4 + type T5 = + | A + | B + type T6 = + { x: int } + type private T7 = + | A + | B + type private T8 = + { x: int } + type T9 = + private | A + | B + type T10 = + private { x: int } + type T11 = + private | A + | B + type T12 = + private { x: int } + type private T13 + type private T14 = + new: unit -> T14 + +> val it: seq = + seq + [(43, "10/28/2008", 1); (46, "11/18/2008", 1); (56, "1/27/2009", 2); + (58, "2/10/2009", 1)] + +> module Test4343a = + val mk: i: int -> string + val x100: string = + "0123456789012345678901234567890123456789012345678901234567890"+[39 chars] + val x90: string = + "0123456789012345678901234567890123456789012345678901234567890"+[29 chars] + val x80: string = + "0123456789012345678901234567890123456789012345678901234567890"+[19 chars] + val x75: string = + "0123456789012345678901234567890123456789012345678901234567890"+[14 chars] + val x74: string = + "0123456789012345678901234567890123456789012345678901234567890"+[13 chars] + val x73: string = + "0123456789012345678901234567890123456789012345678901234567890"+[12 chars] + val x72: string = + "012345678901234567890123456789012345678901234567890123456789012345678901" + val x71: string = + "01234567890123456789012345678901234567890123456789012345678901234567890" + val x70: string = + "0123456789012345678901234567890123456789012345678901234567890123456789" +module Test4343b = + val fA: x: int -> int + val fB: x: 'a -> y: 'a -> 'a list + val gA: (int -> int) + val gB: ('a -> 'a -> 'a list) + val gAB: (int -> int) * ('a -> 'a -> 'a list) + val hB: ('a -> 'a -> 'a list) + val hA: (int -> int) +module Test4343c = + val typename<'a> : string + val typename2<'a> : string * string +module Test4343d = + val xList: int list = [1; 2; 3] + val xArray: int[] = [|1; 2; 3|] + val xString: string = "abcdef" + val xOption: int option = Some 12 + val xArray2: (int * int)[,] = [[(0, 0); (0, 1)] + [(1, 0); (1, 1)]] + val xSeq: seq +module Test4343e = + type C = + new: x: int -> C + val cA: C + val cB: C + val cAB: C * C * C list = + (FSI_0090+Test4343e+C, FSI_0090+Test4343e+C, + [FSI_0090+Test4343e+C; FSI_0090+Test4343e+C]) + type D = + new: x: int -> D + override ToString: unit -> string + val dA: D = D(1) + val dB: D = D(2) + val dAB: D * D * D list = (D(1), D(2), [D(1); D(2)]) + module Generic = + type CGeneric<'a> = + new: x: 'a -> CGeneric<'a> + val cA: C + val cB: C + val cAB: C * C * C list = + (FSI_0090+Test4343e+C, FSI_0090+Test4343e+C, + [FSI_0090+Test4343e+C; FSI_0090+Test4343e+C]) + type D<'a> = + new: x: 'a -> D<'a> + override ToString: unit -> string + val dA: D = D(1) + val dB: D = D(2) + val dAB: D * D * D list = (D(1), D(2), [D(1); D(2)]) + val dC: D = D(True) + val boxed_dABC: obj list = [D(1); D(2); D(True)] +type F1 = + inherit System.Windows.Forms.Form + interface System.IDisposable + val x: F1 + val x2: F1 + member B: unit -> int + member D: x: int -> int + 2 overloads + abstract MMM: bool -> bool + override ToString: unit -> string + static member A: unit -> int + static member C: unit -> int + abstract AAA: int + abstract BBB: bool with set + member D2: int + member E: int + abstract ZZZ: int + static val mutable private sx: F1 + static val mutable private sx2: F1 +[] +type IP = + new: x: int * y: int -> IP + static val mutable private AA: IP +module Regression4643 = + [] + type RIP = + new: x: int -> RIP + static val mutable private y: RIP + [] + type arg_unused_is_RIP = + new: x: RIP -> arg_unused_is_RIP + [] + type arg_used_is_RIP = + new: x: RIP -> arg_used_is_RIP + member X: RIP + [] + type field_is_RIP = + val x: RIP +type Either<'a,'b> = + | This of 'a + | That of 'b +val catch: f: (unit -> 'a) -> Either<'a,(string * string)> +val seqFindIndexFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +val seqFindFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +val seqPickFailure: Either = + That + ("System.Collections.Generic.KeyNotFoundException", + "An index satisfying the predicate was not found in the collection.") +module Regression5218 = + val t1: int = 1 + val t2: int * int = (1, 2) + val t3: int * int * int = (1, 2, 3) + val t4: int * int * int * int = (1, 2, 3, 4) + val t5: int * int * int * int * int = (1, 2, 3, 4, 5) + val t6: int * int * int * int * int * int = (1, 2, 3, 4, 5, 6) + val t7: int * int * int * int * int * int * int = (1, 2, 3, 4, 5, 6, 7) + val t8: int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8) + val t9: int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9) + val t10: int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) + val t11: int * int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11) + val t12: + int * int * int * int * int * int * int * int * int * int * int * int = + (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12) + val t13: + int * int * int * int * int * int * int * int * int * int * int * int * + int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13) + val t14: + int * int * int * int * int * int * int * int * int * int * int * int * + int * int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14) + val t15: + int * int * int * int * int * int * int * int * int * int * int * int * + int * int * int = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15) + +> module Regression3739 = + type IB = + abstract AbstractMember: int -> int + type C<'a when 'a :> IB> = + new: unit -> C<'a> + static member StaticMember: x: 'a -> int + +> module Regression3739 = + type IB = + abstract AbstractMember: int -> int + type C<'a when 'a :> IB> = + new: unit -> C<'a> + static member StaticMember: x: 'a -> int + +> module Regression3740 = + type Writer<'a> = + abstract get_path: unit -> string + type MyClass = + interface Writer + val path: string + +> type Regression4319_T2 = + static member (+-+-+) : x: 'a * y: 'b -> string + +> type Regression4319_T0 = + static member (+-+-+) : string + +> type Regression4319_T1 = + static member (+-+-+) : x: 'a -> string + +> type Regression4319_T1b = + static member (+-+-+) : x: 'a -> string + +> type Regression4319_T1c = + static member (+-+-+) : x: ('a * 'b) -> string + +> type Regression4319_T1d = + static member (+-+-+) : x: (int * int) -> string + +> type Regression4319_T3 = + static member (+-+-+) : x: 'a * y: 'b * z: 'c -> string + +> type Regression4319_U1 = + static member (+-+-+) : x: 'a -> moreArgs: 'b -> string + +> type Regression4319_U1b = + static member (+-+-+) : x: 'a -> moreArgs: 'b -> string + +> type Regression4319_U2 = + static member (+-+-+) : x: 'a * y: 'b -> moreArgs: 'c -> string + +> type Regression4319_U3 = + static member (+-+-+) : x: 'a * y: 'b * z: 'c -> moreArgs: 'd -> string + +> type Regression4319_check = + static member (&) : string + static member (&^) : string + static member (@) : string + static member (!=) : string + static member (:=) : string + static member (^) : string + static member (/) : string + static member ($) : string + static member (...@) : string + static member (...!=) : string + static member (.../) : string + static member (...=) : string + static member (...>) : string + static member (...^) : string + static member (...<) : string + static member ( ...* ) : string + static member (...%) : string + static member (=) : string + static member ( ** ) : string + static member (>) : string + static member (<) : string + static member (%) : string + static member ( * ) : string + static member (-) : string + +> Expect ABC = ABC +type Regression4469 = + new: unit -> Regression4469 + member ToString: unit -> string +val r4469: Regression4469 = FSI_0106+Regression4469 +val it: unit = () + +> Expect ABC = ABC +val it: unit = () + +> module Regression1019_short = + val double_nan: float = nan + val double_infinity: float = infinity + val single_nan: float32 = nanf + val single_infinity: float32 = infinityf +module Regression1019_long = + val double_nan: float = nan + val double_infinity: float = infinity + val single_nan: float32 = nanf + val single_infinity: float32 = infinityf + +> val it: int ref = { contents = 1 } + +> val x: int ref = { contents = 1 } +val f: (unit -> int) + +> val it: int = 1 + +> val it: unit = () + +> val it: int = 3 + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: int[] = + [|0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; + ...|] + +> val it: 'a list + +> val it: 'a list list + +> val it: 'a option + +> val it: 'a list * 'b list + +> val it: x: 'a -> 'a + +> val fff: x: 'a -> 'a + +> val it: ('a -> 'a) + +> val note_ExpectDupMethod: string = + "Regression4927: Expect error due to duplicate methods in the "+[20 chars] + +> > val note_ExpectDupProperty: string = + "Regression4927: Expect error due to duplicate properties in t"+[23 chars] + +> > > val it: string = "NOTE: Expect IAPrivate less accessible IBPublic" + +> > val it: string = "NOTE: Expect IAPrivate less accessible IBInternal" + +> > module Regression5265_PriPri = + type private IAPrivate = + abstract P: int + type private IBPrivate = + inherit IAPrivate + abstract Q: int + +> val it: string = "NOTE: Expect IAInternal less accessible IBPublic" + +> > module Regression5265_IntInt = + type internal IAInternal = + abstract P: int + type internal IBInternal = + inherit IAInternal + abstract Q: int + +> module Regression5265_IntPri = + type internal IAInternal = + abstract P: int + type private IBPrivate = + inherit IAInternal + abstract Q: int + +> module Regression5265_PubPub = + type IAPublic = + abstract P: int + type IBPublic = + inherit IAPublic + abstract Q: int + +> module Regression5265_PubInt = + type IAPublic = + abstract P: int + type internal IBInternal = + inherit IAPublic + abstract Q: int + +> module Regression5265_PubPri = + type IAPublic = + abstract P: int + type private IBPrivate = + inherit IAPublic + abstract Q: int + +> val it: string = + "Regression4232: Expect an error about duplicate virtual methods from parent type" + +> > val it: string = + "** Expect AnAxHostSubClass to be accepted. AxHost has a newslot virtual RightToLeft property outscope RightToLeft on Control" + +> type AnAxHostSubClass = + inherit System.Windows.Forms.AxHost + new: x: string -> AnAxHostSubClass + +> val it: string = + "** Expect error because the active pattern result contains free type variables" + +> > val it: string = + "** Expect error because the active pattern result contains free type variables (match value generic)" + +> > val it: string = + "** Expect error because the active pattern result contains free type variables (when active pattern also has parameters)" + +> > val it: string = + "** Expect OK, since error message says constraint should work!" + +> val (|A|B|) : x: int -> Choice + +> val it: string = "** Expect error since active pattern is not a function!" + +> > val it: string = + "** Expect OK since active pattern result is not too generic, typars depend on match val" + +> val (|A|B|) : p: bool -> 'a * 'b -> Choice<'a,'b> + +> val it: string = + "** Expect OK since active pattern result is not too generic, typars depend on parameters" + +> val (|A|B|) : aval: 'a -> bval: 'b -> x: bool -> Choice<'a,'b> + +> val it: string = + "** Expect OK since active pattern result is generic, but it typar from closure, so OK" + +> val outer: x: 'a -> (int -> 'a option) + +> val it: string = + "** Expect OK, BUG 472278: revert unintended breaking change to Active Patterns in F# 3.0" + +> val (|Check1|) : a: int -> int * 'a option + +> > module ReflectionEmit = + type IA = + abstract M: #IB -> int + and IB = + abstract M: #IA -> int + type IA2<'a when 'a :> IB2<'a> and 'a :> IA2<'a>> = + abstract M: int + and IB2<'b when 'b :> IA2<'b> and 'b :> IB2<'b>> = + abstract M: int + +> val it: string = + "Regression_139182: Expect the follow code to be accepted without error" + +> [] +type S = + member TheMethod: unit -> int64 +val theMethod: s: S -> int64 +type T = + new: unit -> T + member Prop5: int64 + static member Prop1: int64 + static member Prop2: int64 + static member Prop3: int64 + static member Prop4: string + +> val it: System.Threading.ThreadLocal list = [0 {IsValueCreated = false; + Values = ?;}] + +> type MyDU = + | Case1 of Val1: int * Val2: string + | Case2 of string * V2: bool * float + | Case3 of int + | Case4 of Item1: bool + | Case5 of bool * string + | Case6 of Val1: int * bool * string + | Case7 of ``Big Name`` : int +val namedFieldVar1: MyDU = Case1 (5, "") +val namedFieldVar2: MyDU = Case7 25 + +> exception MyNamedException1 of Val1: int * Val2: string +exception MyNamedException2 of string * V2: bool * float +exception MyNamedException3 of Data: int +exception MyNamedException4 of bool +exception MyNamedException5 of int * string +exception MyNamedException6 of Val1: int * bool * string * Data8: float +exception MyNamedException7 of ``Big Named Field`` : int +val namedEx1: exn = MyNamedException1 (5, "") +val namedEx2: exn = MyNamedException7 25 + +> type optionRecord = + { x: int option } +val x: optionRecord = { x = None } + +> type optionRecord = + { x: obj } +val x: optionRecord = { x = null } + +> type RecordWithMembers = + { x: obj } + member Method: unit -> int + member Property: int + +> type UnionWithMembers = + | Case1 + | Case2 of int + member Method: unit -> int + member Property: int + +> type OneFieldRecordNoXmlDoc = + { OneField: obj } + +> type OneFieldRecordXmlDoc = + { + OneField: obj + } + +> type TwoFieldRecordNoXmlDoc = + { + TwoFields1: obj + TwoFields2: obj + } + +> type TwoFieldRecordXmlDoc = + { + TwoFields1: obj + TwoFields2: obj + } + +> type Int32 with + member ExtrinsicExtensionProperty: int +type Int32 with + member ExtrinsicExtensionMethod: unit -> int + +> val ``value with spaces in name`` : bool = true + +> val functionWhichTakesLongNameMixedParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int * + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int + -> ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int * + dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesLongNameTupledParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int * + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int * + ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int * + ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesLongNameCurriedParameters: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: int + -> bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb: int + -> cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc: int + -> dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd: int + -> int + +> val functionWhichTakesMixedLengthCurriedParametersA: + a: 'a -> b: 'b -> c: 'c -> ddddddddddddddddddddddddddddddddddddddddddddd: 'd + -> int + +> val functionWhichTakesMixedLengthCurriedParametersB: + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: 'a -> b: 'b -> c: 'c -> d: 'd -> int + +> val f: ``parameter with spaces in name`` : int -> int + +> val functionWhichTakesAParameterPeeciselyPlusButNotOpAddition: + ``+`` : (int -> int -> int) -> int + +> val functionWhichTakesAParameterOpAddition: (+) : (int -> int -> int) -> int + +> val functionWhichTakesAParameterCalled_land: + ``land`` : (int -> int -> int) -> int + +> type RecordWithStrangeNames = + { + ``funky name`` : obj + op_Addition: obj + ``+`` : obj + ``land`` : obj + ``base`` : obj + } + +> type UnionWithSpacesInNamesOfCases = + | ``Funky name`` + | ``Funky name 2`` + +> type ``Type with spaces in name`` = + | A + | B + +> type op_Addition = + | A + | B + +> type ``land`` = + | A + | B + +> module ``Module with spaces in name`` = + val x: int = 1 + +> module op_Addition = + val x: int = 1 + +> module ``land`` = + val x: int = 1 + +> val ``+`` : x: 'a -> y: 'b -> int + +> val (+) : x: int -> y: int -> int + +> val ``base`` : int = 2 + +> val (mod) : int = 2 + +> val ``or`` : int = 2 + +> val ``land`` : int = 2 + +> val ``.ctor`` : int = 2 + +> val ``.cctor`` : int = 2 + +> [] +val SomeLiteralWithASomewhatLongName: string + = "SomeVeryLongLiteralValueWithLotsOfCharacters" +[] +val SomeLiteralWithASomewhatLongName2: string + = + "SomeVeryLongLiteralValueWithLotsOfCharactersSomeVeryLongLiteralValueWithLotsOfCharactersSomeVeryLongLiteralValueWithLotsOfCharacters" +[] +val ShortName: string = "hi" + +> val it: System.DayOfWeek = Tuesday + +> val internal f: unit -> int + +> val it: int = 1 + +> type internal CInternal = + new: unit -> CInternal + +> val it: unit = () + +> type internal CPublic = + new: unit -> CPublic + member MInternal: unit -> unit + +> val it: unit = () + +> type internal CPublic2 = + new: unit -> CPublic2 + member MPublic: unit -> int + +> val it: int = 1 + +> val inst1: TestLoadFile.ClassInFile1 + +> val inst2: TestLoadFile2.ClassInFile2 + +> > > diff --git a/tests/fsharp/single-test.fs b/tests/fsharp/single-test.fs index c2ca34e092e..a365073cbbc 100644 --- a/tests/fsharp/single-test.fs +++ b/tests/fsharp/single-test.fs @@ -208,7 +208,7 @@ let singleTestBuildAndRunCore cfg copyFiles p languageVersion = let extraSources = ["testlib.fsi";"testlib.fs";"test.mli";"test.ml";"test.fsi";"test.fs";"test2.fsi";"test2.fs";"test.fsx";"test2.fsx"] let utilitySources = [__SOURCE_DIRECTORY__ ++ "coreclr_utilities.fs"] let referenceItems = if String.IsNullOrEmpty(copyFiles) then [] else [copyFiles] - let framework = "net5.0" + let framework = "net6.0" // Arguments: // outputType = OutputType.Exe, OutputType.Library or OutputType.Script @@ -304,8 +304,8 @@ let singleTestBuildAndRunCore cfg copyFiles p languageVersion = match p with #if NETCOREAPP - | FSC_NETCORE (optimized, buildOnly) -> executeSingleTestBuildAndRun OutputType.Exe "coreclr" "net5.0" optimized buildOnly - | FSI_NETCORE -> executeSingleTestBuildAndRun OutputType.Script "coreclr" "net5.0" true false + | FSC_NETCORE (optimized, buildOnly) -> executeSingleTestBuildAndRun OutputType.Exe "coreclr" "net6.0" optimized buildOnly + | FSI_NETCORE -> executeSingleTestBuildAndRun OutputType.Script "coreclr" "net6.0" true false #else | FSC_NETFX (optimized, buildOnly) -> executeSingleTestBuildAndRun OutputType.Exe "net40" "net472" optimized buildOnly | FSI_NETFX -> executeSingleTestBuildAndRun OutputType.Script "net40" "net472" true false diff --git a/tests/fsharp/tools/fsharp41/netstandard2.0/providerDesigner.dll b/tests/fsharp/tools/fsharp41/netstandard2.0/providerDesigner.dll deleted file mode 100644 index c3d2de6083b..00000000000 Binary files a/tests/fsharp/tools/fsharp41/netstandard2.0/providerDesigner.dll and /dev/null differ diff --git a/tests/fsharp/typeProviders/.gitignore b/tests/fsharp/typeProviders/.gitignore index 5086f04ef24..148551ef520 100644 --- a/tests/fsharp/typeProviders/.gitignore +++ b/tests/fsharp/typeProviders/.gitignore @@ -1,23 +1,6 @@ -diamondAssembly/provided.dll -diamondAssembly/provider.dll - -globalNamespace/globalNamespaceTP.dll -globalNamespace/globalNamespaceTP.pdb - -helloWorld/provided.dll -helloWorld/provided.pdb -helloWorld/provided?.dll -helloWorld/provided?.pdb -helloWorld/providedNullAssemblyName.dll -helloWorld/providedNullAssemblyName.pdb -helloWorld/provider.dll helloWorld/bincompat1 helloWorld/bincompat2 -helloWorldCSharp/magic.dll -helloWorldCSharp/provider.dll - -negTests/*.dll negTests/*.bsl negTests/*.err negTests/*.vserr @@ -25,12 +8,5 @@ negTests/*.vsbsl negTests/*.diff negTests/*.vsdiff -splitAssembly/provider.dll -splitAssembly/providerDesigner.dll - -wedgeAssembly/provided.dll -wedgeAssembly/providedJ.dll -wedgeAssembly/providedK.dll -wedgeAssembly/provider.dll - - +*.dll +*.pdb diff --git a/tests/fsharp/typeProviders/fsharp41/net45/providerDesigner.dll b/tests/fsharp/typeProviders/fsharp41/net45/providerDesigner.dll index 569260eff75..43d16856e51 100644 Binary files a/tests/fsharp/typeProviders/fsharp41/net45/providerDesigner.dll and b/tests/fsharp/typeProviders/fsharp41/net45/providerDesigner.dll differ diff --git a/tests/fsharp/typeProviders/fsharp41/net461/providerDesigner.dll b/tests/fsharp/typeProviders/fsharp41/net461/providerDesigner.dll index 3e45a70c53b..262e9c2e4db 100644 Binary files a/tests/fsharp/typeProviders/fsharp41/net461/providerDesigner.dll and b/tests/fsharp/typeProviders/fsharp41/net461/providerDesigner.dll differ diff --git a/tests/fsharp/tools/fsharp41/net45/providerDesigner.dll b/tests/fsharp/typeProviders/fsharp41/net472/providerDesigner.dll similarity index 86% rename from tests/fsharp/tools/fsharp41/net45/providerDesigner.dll rename to tests/fsharp/typeProviders/fsharp41/net472/providerDesigner.dll index 7dc9ab96355..f8e612bec9a 100644 Binary files a/tests/fsharp/tools/fsharp41/net45/providerDesigner.dll and b/tests/fsharp/typeProviders/fsharp41/net472/providerDesigner.dll differ diff --git a/tests/fsharp/tools/fsharp41/net461/providerDesigner.dll b/tests/fsharp/typeProviders/fsharp41/net48/providerDesigner.dll similarity index 86% rename from tests/fsharp/tools/fsharp41/net461/providerDesigner.dll rename to tests/fsharp/typeProviders/fsharp41/net48/providerDesigner.dll index 7e7821bdd45..587f5f629b6 100644 Binary files a/tests/fsharp/tools/fsharp41/net461/providerDesigner.dll and b/tests/fsharp/typeProviders/fsharp41/net48/providerDesigner.dll differ diff --git a/tests/fsharp/typeProviders/fsharp41/netstandard2.0/providerDesigner.dll b/tests/fsharp/typeProviders/fsharp41/netstandard2.0/providerDesigner.dll index 8bfed32f1c5..235336a0325 100644 Binary files a/tests/fsharp/typeProviders/fsharp41/netstandard2.0/providerDesigner.dll and b/tests/fsharp/typeProviders/fsharp41/netstandard2.0/providerDesigner.dll differ diff --git a/tests/fsharpqa/testenv/src/PEVerify/PEVerify.csproj b/tests/fsharpqa/testenv/src/PEVerify/PEVerify.csproj index affe87d5293..7ba51a3f0f1 100644 --- a/tests/fsharpqa/testenv/src/PEVerify/PEVerify.csproj +++ b/tests/fsharpqa/testenv/src/PEVerify/PEVerify.csproj @@ -2,8 +2,8 @@ Exe - net472;net5.0 - net5.0 + net472;net6.0 + net6.0 $(NoWarn);1591 diff --git a/tests/service/Common.fs b/tests/service/Common.fs index 9434c98cd58..3c44607f01a 100644 --- a/tests/service/Common.fs +++ b/tests/service/Common.fs @@ -15,6 +15,7 @@ open FSharp.Compiler.Text open TestFramework open FsUnit open NUnit.Framework +open FSharp.Test.Utilities type Async with static member RunImmediate (computation: Async<'T>, ?cancellationToken ) = @@ -29,39 +30,6 @@ type Async with cancellationToken) task.Result -#if NETCOREAPP -let readRefs (folder : string) (projectFile: string) = - let runProcess (workingDir: string) (exePath: string) (args: string) = - let psi = ProcessStartInfo() - psi.FileName <- exePath - psi.WorkingDirectory <- workingDir - psi.RedirectStandardOutput <- false - psi.RedirectStandardError <- false - psi.Arguments <- args - psi.CreateNoWindow <- true - psi.UseShellExecute <- false - - use p = new Process() - p.StartInfo <- psi - p.Start() |> ignore - p.WaitForExit() - - let exitCode = p.ExitCode - exitCode, () - - let projFilePath = Path.Combine(folder, projectFile) - let runCmd exePath args = runProcess folder exePath ((args |> String.concat " ") + " -restore") - let msbuildExec = Dotnet.ProjInfo.Inspect.dotnetMsbuild runCmd - let result = Dotnet.ProjInfo.Inspect.getProjectInfo ignore msbuildExec Dotnet.ProjInfo.Inspect.getFscArgs [] projFilePath - match result with - | Ok(Dotnet.ProjInfo.Inspect.GetResult.FscArgs x) -> - x - |> List.filter (fun s -> s.StartsWith("-r:", StringComparison.Ordinal)) - |> List.map (fun s -> s.Replace("-r:", "")) - | _ -> [] -#endif - - // Create one global interactive checker instance let checker = FSharpChecker.Create() @@ -107,17 +75,7 @@ let fsCoreDefaultReference() = PathRelativeToTestAssembly "FSharp.Core.dll" let mkStandardProjectReferences () = -#if NETCOREAPP - let file = "Sample_NETCoreSDK_FSharp_Library_netstandard2_0.fsproj" - let projDir = Path.Combine(__SOURCE_DIRECTORY__, "../projects/Sample_NETCoreSDK_FSharp_Library_netstandard2_0") - readRefs projDir file -#else - [ yield sysLib "mscorlib" - yield sysLib "System" - yield sysLib "System.Core" - yield sysLib "System.Numerics" - yield fsCoreDefaultReference() ] -#endif + TargetFrameworkUtil.currentReferences let mkProjectCommandLineArgsSilent (dllName, fileNames) = let args = diff --git a/tests/service/EditorTests.fs b/tests/service/EditorTests.fs index 7b63749bda8..550c23b677e 100644 --- a/tests/service/EditorTests.fs +++ b/tests/service/EditorTests.fs @@ -37,12 +37,29 @@ open FSharp.Compiler.Text open FSharp.Compiler.Tokenization let stringMethods = - ["Chars"; "Clone"; "CompareTo"; "Contains"; "CopyTo"; "EndsWith"; "Equals"; - "GetEnumerator"; "GetHashCode"; "GetReverseIndex"; "GetType"; "GetTypeCode"; "IndexOf"; - "IndexOfAny"; "Insert"; "IsNormalized"; "LastIndexOf"; "LastIndexOfAny"; - "Length"; "Normalize"; "PadLeft"; "PadRight"; "Remove"; "Replace"; "Split"; - "StartsWith"; "Substring"; "ToCharArray"; "ToLower"; "ToLowerInvariant"; - "ToString"; "ToUpper"; "ToUpperInvariant"; "Trim"; "TrimEnd"; "TrimStart"] + [ + "Chars"; "Clone"; "CompareTo"; "Contains"; "CopyTo"; "EndsWith"; +#if NETCOREAPP + "EnumerateRunes"; +#endif + "Equals"; "GetEnumerator"; "GetHashCode"; +#if NETCOREAPP + "GetPinnableReference"; +#endif + "GetReverseIndex"; "GetType"; "GetTypeCode"; "IndexOf"; + "IndexOfAny"; "Insert"; "IsNormalized"; "LastIndexOf"; "LastIndexOfAny"; + "Length"; "Normalize"; "PadLeft"; "PadRight"; "Remove"; + "Replace"; +#if NETCOREAPP + "ReplaceLineEndings"; +#endif + "Split"; "StartsWith"; "Substring"; + "ToCharArray"; "ToLower"; "ToLowerInvariant"; "ToString"; "ToUpper"; + "ToUpperInvariant"; "Trim"; "TrimEnd"; "TrimStart"; +#if NETCOREAPP + "TryCopyTo" +#endif +] let input = """ @@ -131,23 +148,36 @@ let ``GetMethodsAsSymbols should return all overloads of a method as FSharpSymbo let methodsSymbols = typeCheckResults.GetMethodsAsSymbols(5, 27, inputLines.[4], ["String"; "Concat"]) match methodsSymbols with | Some methods -> - [ for ms in methods do - yield ms.Symbol.DisplayName, extractCurriedParams ms ] - |> List.sortBy (fun (_name, parameters) -> parameters.Length, (parameters |> List.map snd )) - |> shouldEqual + let results = + [ for ms in methods do + yield ms.Symbol.DisplayName, extractCurriedParams ms ] + |> List.sortBy (fun (_name, parameters) -> parameters.Length, (parameters |> List.map snd )) + let expected = [("Concat", [("values", "Collections.Generic.IEnumerable<'T>")]); ("Concat", [("values", "Collections.Generic.IEnumerable")]); ("Concat", [("arg0", "obj")]); ("Concat", [("args", "obj[]")]); ("Concat", [("values", "string[]")]); +#if NETCOREAPP + ("Concat", [("str0", "ReadOnlySpan");("str1", "ReadOnlySpan")]); +#endif ("Concat", [("arg0", "obj"); ("arg1", "obj")]); ("Concat", [("str0", "string"); ("str1", "string")]); +#if NETCOREAPP + ("Concat", [("str0", "ReadOnlySpan"); ("str1", "ReadOnlySpan"); ("str2", "ReadOnlySpan")]); +#endif ("Concat", [("arg0", "obj"); ("arg1", "obj"); ("arg2", "obj")]); ("Concat", [("str0", "string"); ("str1", "string"); ("str2", "string")]); +#if NETCOREAPP + ("Concat", [("str0", "ReadOnlySpan"); ("str1", "ReadOnlySpan"); ("str2", "ReadOnlySpan"); ("str3", "ReadOnlySpan")]); +#endif #if !NETCOREAPP // TODO: check why this is needed for .NET Core testing of FSharp.Compiler.Service ("Concat", [("arg0", "obj"); ("arg1", "obj"); ("arg2", "obj"); ("arg3", "obj")]); #endif ("Concat", [("str0", "string"); ("str1", "string"); ("str2", "string"); ("str3", "string")])] + + results |> shouldEqual expected + | None -> failwith "No symbols returned" diff --git a/tests/service/ProjectAnalysisTests.fs b/tests/service/ProjectAnalysisTests.fs index 2843f9b8b12..878b5455f75 100644 --- a/tests/service/ProjectAnalysisTests.fs +++ b/tests/service/ProjectAnalysisTests.fs @@ -2214,14 +2214,19 @@ let ``Test Project13 all symbols`` () = let dtType = dtSymbol.Symbol:?> FSharpEntity - set [ for i in dtType.DeclaredInterfaces -> i.ToString() ] |> shouldEqual - (set - ["type System.IComparable"; - "type System.IFormattable"; - "type System.IConvertible"; - "type System.Runtime.Serialization.ISerializable"; - "type System.IComparable"; - "type System.IEquatable"]) + set [ for i in dtType.DeclaredInterfaces -> i.ToString() ] |> shouldEqual ( + set + [ + "type System.IComparable" + "type System.IFormattable" + "type System.IConvertible" +#if NETCOREAPP + "type System.ISpanFormattable" +#endif + "type System.Runtime.Serialization.ISerializable" + "type System.IComparable" + "type System.IEquatable" + ]) dtType.BaseType.ToString() |> shouldEqual "Some(type System.ValueType)" @@ -4199,12 +4204,22 @@ let ``Test project31 C# method attributes`` () = objMethodsAttributes |> set - |> shouldEqual - (set [ + |> shouldEqual (set + [ #if !NETCOREAPP - "(SecuritySafeCriticalAttribute, [], [])"; + "(SecuritySafeCriticalAttribute, [], [])" +#else + "(NullableAttribute, [(type Microsoft.FSharp.Core.byte, 2uy)], [])"; + "(NullableContextAttribute, [(type Microsoft.FSharp.Core.byte, 0uy)], [])" + "(NullableContextAttribute, [(type Microsoft.FSharp.Core.byte, 2uy)], [])" + "(SupportedOSPlatformAttribute, [(type Microsoft.FSharp.Core.string, \"windows\")],\n [])" + "(UnsupportedOSPlatformAttribute,\n [(type Microsoft.FSharp.Core.string, \"android\")], [])" + "(UnsupportedOSPlatformAttribute,\n [(type Microsoft.FSharp.Core.string, \"browser\")], [])" + "(UnsupportedOSPlatformAttribute, [(type Microsoft.FSharp.Core.string, \"ios\")],\n [])" + "(UnsupportedOSPlatformAttribute, [(type Microsoft.FSharp.Core.string, \"tvos\")],\n [])" #endif - "(CLSCompliantAttribute, [(type Microsoft.FSharp.Core.bool, false)], [])"]) + "(CLSCompliantAttribute, [(type Microsoft.FSharp.Core.bool, false)], [])" + ]) [] #if NETCOREAPP @@ -4240,12 +4255,23 @@ let ``Test project31 Format C# method attributes`` () = objMethodsAttributes |> set - |> shouldEqual - (set ["[]"; + |> shouldEqual( + set + [ + "[]" #if !NETCOREAPP - "[]"; + "[]" +#else + "[]" + "[]" + "[]" + "[]" + "[]" + "[]" + "[]" + "[]" #endif - ]) + ]) module internal Project32 = @@ -4365,25 +4391,26 @@ let ``Test Project33 extension methods`` () = ("GetValue", ["member"; "extmem"])] module internal Project34 = + let directoryPath = tryCreateTemporaryDirectory () + let sourceFileName = Path.Combine(directoryPath, "Program.fs") + let dllName = Path.ChangeExtension(sourceFileName, ".dll") + let projFileName = Path.ChangeExtension(sourceFileName, ".fsproj") + let fileSource = """ + module Dummy + """ + FileSystem.OpenFileForWriteShim(sourceFileName).Write(fileSource) + let cleanFileName a = if a = sourceFileName then "file1" else "??" - let fileName1 = Path.ChangeExtension(tryCreateTemporaryFileName (), ".fs") - let base2 = tryCreateTemporaryFileName () - let dllName = Path.ChangeExtension(base2, ".dll") - let projFileName = Path.ChangeExtension(base2, ".fsproj") - let fileSource1 = """ -module Dummy -""" - FileSystem.OpenFileForWriteShim(fileName1).Write(fileSource1) - let cleanFileName a = if a = fileName1 then "file1" else "??" - - let fileNames = [fileName1] + let fileNames = [sourceFileName] let args = [| yield! mkProjectCommandLineArgs (dllName, fileNames) - // We use .NET-buit version of System.Data.dll since the tests depend on implementation details + // We use .NET-built version of System.Data.dll since the tests depend on implementation details // i.e. the private type System.Data.Listeners may not be available on Mono. yield @"-r:" + Path.Combine(__SOURCE_DIRECTORY__, Path.Combine("data", "System.Data.dll")) |] + |> Array.filter(fun arg -> not((arg.Contains("System.Data")) && not (arg.Contains(@"service\data\System.Data.dll")))) + let options = checker.GetProjectOptionsFromCommandLineArgs (projFileName, args) [] @@ -4398,21 +4425,29 @@ let ``Test Project34 whole project errors`` () = [] #endif let ``Test project34 should report correct accessibility for System.Data.Listeners`` () = - let wholeProjectResults = checker.ParseAndCheckProject(Project34.options) |> Async.RunImmediate + let options = Project34.options + let wholeProjectResults = checker.ParseAndCheckProject(options) |> Async.RunImmediate let rec getNestedEntities (entity: FSharpEntity) = seq { yield entity for e in entity.NestedEntities do yield! getNestedEntities e } let listenerEntity = - wholeProjectResults.ProjectContext.GetReferencedAssemblies() - |> List.tryPick (fun asm -> if asm.SimpleName.Contains("System.Data") then Some asm.Contents.Entities else None) - |> Option.get - |> Seq.collect getNestedEntities - |> Seq.tryFind (fun entity -> - entity.TryFullName - |> Option.map (fun s -> s.Contains("System.Data.Listeners")) - |> fun arg -> defaultArg arg false) - |> Option.get + let refs = wholeProjectResults.ProjectContext.GetReferencedAssemblies() + let picked = refs |> List.tryPick (fun asm -> if asm.SimpleName.Contains("System.Data") then Some asm.Contents.Entities else None) + let v = + let nestedEntities = + picked + |> Option.get + |> Seq.collect getNestedEntities + nestedEntities + |> Seq.tryFind (fun entity -> + entity.TryFullName + |> Option.map (fun s -> + let x = s + x.Contains("System.Data.Listeners")) + |> fun arg -> defaultArg arg false) + |> Option.get + v listenerEntity.Accessibility.IsPrivate |> shouldEqual true let listenerFuncEntity = @@ -5653,7 +5688,7 @@ let checkContentAsScript content = let tempDir = Path.GetTempPath() let scriptFullPath = Path.Combine(tempDir, scriptName) let sourceText = SourceText.ofString content - let projectOptions, _ = checker.GetProjectOptionsFromScript(scriptFullPath, sourceText, useSdkRefs = true, assumeDotNetFramework = false) |> Async.RunImmediate + let projectOptions, _ = checker.GetProjectOptionsFromScript(scriptFullPath, sourceText, useSdkRefs = true, assumeDotNetFramework = false) |> Async.RunImmediate let parseOptions, _ = checker.GetParsingOptionsFromProjectOptions projectOptions let parseResults = checker.ParseFile(scriptFullPath, sourceText, parseOptions) |> Async.RunImmediate let checkResults = checker.CheckFileInProject(parseResults, scriptFullPath, 0, sourceText, projectOptions) |> Async.RunImmediate diff --git a/tests/service/ScriptOptionsTests.fs b/tests/service/ScriptOptionsTests.fs index 9b94aedd922..a533d7ac4c8 100644 --- a/tests/service/ScriptOptionsTests.fs +++ b/tests/service/ScriptOptionsTests.fs @@ -37,27 +37,6 @@ let ``can generate options for different frameworks regardless of execution envi | [] -> () | errors -> failwithf "Error while parsing script with assumeDotNetFramework:%b, useSdkRefs:%b, and otherFlags:%A:\n%A" assumeNetFx useSdk flags errors -[] -[] -[] -let ``all default assembly references are system assemblies``(assumeNetFx, useSdkRefs, flags) = - let tempFile = tryCreateTemporaryFileName () + ".fsx" - let options, errors = - checker.GetProjectOptionsFromScript(tempFile, SourceText.ofString scriptSource, assumeDotNetFramework = assumeNetFx, useSdkRefs = useSdkRefs, otherFlags = flags) - |> Async.RunImmediate - match errors with - | [] -> () - | errors -> failwithf "Error while parsing script with assumeNetFx:%b, useSdkRefs:%b, and otherFlags:%A:\n%A" assumeNetFx useSdkRefs flags errors - for r in options.OtherOptions do - if r.StartsWith("-r:") then - let ref = Path.GetFullPath(r.[3..]) - let baseName = Path.GetFileNameWithoutExtension(ref) - let projectDir = System.Environment.CurrentDirectory - if not (FSharp.Compiler.FxResolver(assumeNetFx, projectDir, rangeForErrors=range0, useSdkRefs=useSdkRefs, isInteractive=false, sdkDirOverride=None).GetSystemAssemblies().Contains(baseName)) then - printfn "Failing, printing options from GetProjectOptionsFromScript..." - for opt in options.OtherOptions do - printfn "option: %s" opt - failwithf "expected FSharp.Compiler.DotNetFrameworkDependencies.systemAssemblies to contain '%s' because '%s' is a default reference for a script, (assumeNetFx, useSdk, flags) = %A" baseName ref (assumeNetFx, useSdkRefs, flags) // This test atempts to use a bad SDK number 666.666.666 // diff --git a/vsintegration/src/FSharp.ProjectSystem.Base/ProjectNode.cs b/vsintegration/src/FSharp.ProjectSystem.Base/ProjectNode.cs index 91487390bb5..26e93f1c125 100644 --- a/vsintegration/src/FSharp.ProjectSystem.Base/ProjectNode.cs +++ b/vsintegration/src/FSharp.ProjectSystem.Base/ProjectNode.cs @@ -6467,7 +6467,7 @@ private bool ShowRetargetingDialog() Guid outputPaneGuid = VSConstants.GUID_BuildOutputWindowPane; if (outputWindow.GetPane(ref outputPaneGuid, out outputPane) >= 0 && outputPane != null) { - Marshal.ThrowExceptionForHR(outputPane.OutputString(message)); + Marshal.ThrowExceptionForHR(outputPane.OutputStringThreadSafe(message)); } } diff --git a/vsintegration/tests/Directory.Build.props b/vsintegration/tests/Directory.Build.props new file mode 100644 index 00000000000..5737505f968 --- /dev/null +++ b/vsintegration/tests/Directory.Build.props @@ -0,0 +1,10 @@ + + + + + + true + portable + + + diff --git a/vsintegration/tests/GetTypesVS.UnitTests/GetTypesVS.UnitTests.fs b/vsintegration/tests/GetTypesVS.UnitTests/GetTypesVS.UnitTests.fs deleted file mode 100644 index d92edecabef..00000000000 --- a/vsintegration/tests/GetTypesVS.UnitTests/GetTypesVS.UnitTests.fs +++ /dev/null @@ -1,17 +0,0 @@ -namespace GetTypesVSUnitTests - -open NUnit.Framework -open System.IO -open System.Reflection - -[] -type VerifyUnitTests() = - - [] - member this.GetTypesForVSUnitTests () = - try - let location = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) - Assembly.LoadFrom(Path.Combine(location, "VisualFSharp.UnitTests.dll")).GetTypes() |> ignore - with | :? ReflectionTypeLoadException as e -> - let message = e.LoaderExceptions |> Seq.fold (fun (acc:string) e -> acc + (sprintf "TypeLoad failure: %s\n" ) (e.Message) ) "" - Assert.Fail(message) diff --git a/vsintegration/tests/GetTypesVS.UnitTests/GetTypesVS.UnitTests.fsproj b/vsintegration/tests/GetTypesVS.UnitTests/GetTypesVS.UnitTests.fsproj deleted file mode 100644 index aaafeb0c4da..00000000000 --- a/vsintegration/tests/GetTypesVS.UnitTests/GetTypesVS.UnitTests.fsproj +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - net472 - x86 - Library - $(NoWarn);3005 - true - true - false - true - true - nunit - true - - - - - - - - - - - - - - - - - - - diff --git a/vsintegration/tests/Salsa/VsMocks.fs b/vsintegration/tests/Salsa/VsMocks.fs index bc730bf9e35..a29192a8db2 100644 --- a/vsintegration/tests/Salsa/VsMocks.fs +++ b/vsintegration/tests/Salsa/VsMocks.fs @@ -1647,12 +1647,12 @@ module internal VsActual = let vsInstallDir = // use the environment variable to find the VS installdir let vsvar = - let var = Environment.GetEnvironmentVariable("VS160COMNTOOLS") + let var = Environment.GetEnvironmentVariable("VS170COMNTOOLS") if String.IsNullOrEmpty var then Environment.GetEnvironmentVariable("VSAPPIDDIR") else var - if String.IsNullOrEmpty vsvar then failwith "VS160COMNTOOLS and VSAPPIDDIR environment variables not found." + if String.IsNullOrEmpty vsvar then failwith "VS170COMNTOOLS and VSAPPIDDIR environment variables not found." Path.Combine(vsvar, "..") let CreateEditorCatalog() = diff --git a/vsintegration/tests/UnitTests/AssemblyResolver.fs b/vsintegration/tests/UnitTests/AssemblyResolver.fs index a118adfd97f..65e717f2618 100644 --- a/vsintegration/tests/UnitTests/AssemblyResolver.fs +++ b/vsintegration/tests/UnitTests/AssemblyResolver.fs @@ -11,12 +11,12 @@ module AssemblyResolver = let vsInstallDir = // use the environment variable to find the VS installdir let vsvar = - let var = Environment.GetEnvironmentVariable("VS160COMNTOOLS") + let var = Environment.GetEnvironmentVariable("VS170COMNTOOLS") if String.IsNullOrEmpty var then Environment.GetEnvironmentVariable("VSAPPIDDIR") else var - if String.IsNullOrEmpty vsvar then failwith "VS160COMNTOOLS and VSAPPIDDIR environment variables not found." + if String.IsNullOrEmpty vsvar then failwith "VS170COMNTOOLS and VSAPPIDDIR environment variables not found." Path.Combine(vsvar, "..") let probingPaths = [| diff --git a/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.UpToDate.fs b/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.UpToDate.fs index a8775d777a0..3403f4115bc 100644 --- a/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.UpToDate.fs +++ b/vsintegration/tests/UnitTests/LegacyProjectSystem/Tests.ProjectSystem.UpToDate.fs @@ -172,7 +172,7 @@ type UpToDate() = File.AppendAllText(proj1Path, TheTests.SimpleFsprojText( ["File1.fs"], // [], // - "v4.5")) // other stuff + "v4.7.2")) // other stuff use project1 = TheTests.CreateProject(proj1Path) let sourcePath1 = Path.Combine(project1.ProjectFolder, "File1.fs") File.AppendAllText(sourcePath1, "namespace Proj1\r\n") @@ -191,7 +191,7 @@ type UpToDate() = File.AppendAllText(proj2Path, TheTests.SimpleFsprojText( ["File2.fs"], // [output1], // - "v4.5")) // other stuff + "v4.7.2")) // other stuff use project2 = TheTests.CreateProject(proj2Path) let sourcePath2 = Path.Combine(project2.ProjectFolder, "File2.fs") File.AppendAllText(sourcePath2, "open Proj1\r\n") diff --git a/vsintegration/tests/UnitTests/TestLib.ProjectSystem.fs b/vsintegration/tests/UnitTests/TestLib.ProjectSystem.fs index 0cd346e1314..933cae8eddb 100644 --- a/vsintegration/tests/UnitTests/TestLib.ProjectSystem.fs +++ b/vsintegration/tests/UnitTests/TestLib.ProjectSystem.fs @@ -384,7 +384,7 @@ type TheTests() = {0} Blah Blah - v4.0 + v4.7.2 512 Blah @@ -408,7 +408,7 @@ type TheTests() = {0} Blah Blah - v4.0 + v4.7.2 512 Blah @@ -471,7 +471,7 @@ type TheTests() = Library Blah Blah - v4.0 + v4.7.2 512 Blah "