From 8dd2bac4778686ddedc01c438d936d0c0aa0a587 Mon Sep 17 00:00:00 2001 From: devops Date: Thu, 15 May 2025 16:10:24 +0000 Subject: [PATCH 01/13] deps/k_release: Set Version 7.1.255 --- deps/k_release | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deps/k_release b/deps/k_release index 867fecb14..4cf3c679a 100644 --- a/deps/k_release +++ b/deps/k_release @@ -1 +1 @@ -7.1.253 +7.1.255 From 3a85f4f7fd5f3717976b215a6d52b421fb345564 Mon Sep 17 00:00:00 2001 From: devops Date: Thu, 15 May 2025 16:10:40 +0000 Subject: [PATCH 02/13] Set Version: 0.3.163 --- kmir/pyproject.toml | 2 +- kmir/src/kmir/__init__.py | 2 +- kmir/uv.lock | 2 +- package/version | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/kmir/pyproject.toml b/kmir/pyproject.toml index d338eeff7..6601457ea 100644 --- a/kmir/pyproject.toml +++ b/kmir/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "kmir" -version = "0.3.162" +version = "0.3.163" description = "" requires-python = "~=3.10" dependencies = [ diff --git a/kmir/src/kmir/__init__.py b/kmir/src/kmir/__init__.py index 679240233..6fff8bfbd 100644 --- a/kmir/src/kmir/__init__.py +++ b/kmir/src/kmir/__init__.py @@ -1,3 +1,3 @@ from typing import Final -VERSION: Final = '0.3.162' +VERSION: Final = '0.3.163' diff --git a/kmir/uv.lock b/kmir/uv.lock index 16c6ad2dc..df2fb5022 100644 --- a/kmir/uv.lock +++ b/kmir/uv.lock @@ -491,7 +491,7 @@ wheels = [ [[package]] name = "kmir" -version = "0.3.162" +version = "0.3.163" source = { editable = "." } dependencies = [ { name = "kframework" }, diff --git a/package/version b/package/version index e41771856..ee7ed8106 100644 --- a/package/version +++ b/package/version @@ -1 +1 @@ -0.3.162 +0.3.163 From 8a003ec11292145a2940da1539418993e4b569a2 Mon Sep 17 00:00:00 2001 From: devops Date: Thu, 15 May 2025 16:11:28 +0000 Subject: [PATCH 03/13] kmir/{pyproject.toml,uv.lock}: sync uv files, K version 7.1.255 --- kmir/pyproject.toml | 2 +- kmir/uv.lock | 26 +++++++++++++------------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/kmir/pyproject.toml b/kmir/pyproject.toml index 6601457ea..67122a5ae 100644 --- a/kmir/pyproject.toml +++ b/kmir/pyproject.toml @@ -8,7 +8,7 @@ version = "0.3.163" description = "" requires-python = "~=3.10" dependencies = [ - "kframework==v7.1.253", + "kframework==v7.1.255", ] [[project.authors]] diff --git a/kmir/uv.lock b/kmir/uv.lock index df2fb5022..6ef355b5b 100644 --- a/kmir/uv.lock +++ b/kmir/uv.lock @@ -403,16 +403,16 @@ wheels = [ [[package]] name = "hypothesis" -version = "6.131.16" +version = "6.131.17" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "attrs" }, { name = "exceptiongroup", marker = "python_full_version < '3.11'" }, { name = "sortedcontainers" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/3c/05/fcda52dd0817080d9a953ef926ca1ba63ce660c437a5f36cdc13c6f74ef3/hypothesis-6.131.16.tar.gz", hash = "sha256:4953b8dbb79ae3399c4243b1799b3286c7809d08457269274f77581aef8b7048", size = 436840, upload-time = "2025-05-13T08:20:18.087Z" } +sdist = { url = "https://files.pythonhosted.org/packages/da/cf/e16dcf27d9b5520ee145d9d69f572ff445a1fa609940fe8104cb225f6754/hypothesis-6.131.17.tar.gz", hash = "sha256:8901926baf6915494ba84353a4cbeaa845c6076d4a159c1d782e6969d4176829", size = 437606, upload-time = "2025-05-14T20:28:19.164Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/dc/f1/a51627f39787b21ee1392fce4685a9480037b548009761e833b89fe3c6db/hypothesis-6.131.16-py3-none-any.whl", hash = "sha256:574e0ebc28e469a891c2c4fcc092ed7d5da81255b84505b599e6768b39d7ca61", size = 501365, upload-time = "2025-05-13T08:20:13.741Z" }, + { url = "https://files.pythonhosted.org/packages/37/71/b18257e930ed2fad015d81b39c3388c181f66af921432164fbbfae1d6c9e/hypothesis-6.131.17-py3-none-any.whl", hash = "sha256:6df86f395b71b6b710dc834a072a5c381b5032be03ce289126dc4b5ba5689bff", size = 502102, upload-time = "2025-05-14T20:28:15.395Z" }, ] [[package]] @@ -468,7 +468,7 @@ wheels = [ [[package]] name = "kframework" -version = "7.1.253" +version = "7.1.255" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "coloredlogs" }, @@ -484,9 +484,9 @@ dependencies = [ { name = "tomli" }, { name = "xdg-base-dirs" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/85/0d/aa199e5f842c9707c9ede7e6953ecb17c3a1bd96020ae9fc5f79fe05c95d/kframework-7.1.253.tar.gz", hash = "sha256:0635966c27cfea6c77b4f19735c43b267c77da9b574e4187b4a4e0f999d2a1b4", size = 240601, upload-time = "2025-05-12T22:19:13.02Z" } +sdist = { url = "https://files.pythonhosted.org/packages/29/63/364fa14d5880e881e75b94974231f1f40526e57eb1a9a7f289b26c115001/kframework-7.1.255.tar.gz", hash = "sha256:14594e34d03389a10893e05d5e4b5e8e9af3e76205cea8035cb9a3f2ebe1ba93", size = 240321, upload-time = "2025-05-15T16:09:53.195Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/b3/4c/235b3ce68fd46e5037d84ded9b2ab7530e48f259214db80663b74fd6de31/kframework-7.1.253-py3-none-any.whl", hash = "sha256:dd86d8fddd3952d8c68a2bf091fe366dd8382d8b29547870062c76f3e9562bb8", size = 291254, upload-time = "2025-05-12T22:19:11.599Z" }, + { url = "https://files.pythonhosted.org/packages/14/2e/bde931da0b29f2f08a0967c286a85330fc61ae097a4f1f788d6ab174be7f/kframework-7.1.255-py3-none-any.whl", hash = "sha256:2c414b1529ae813db5c4f9b123c7b2b5feffa90771b0f2ce31945f4241bfbc2a", size = 290950, upload-time = "2025-05-15T16:09:51.549Z" }, ] [[package]] @@ -517,7 +517,7 @@ dev = [ ] [package.metadata] -requires-dist = [{ name = "kframework", specifier = "==7.1.253" }] +requires-dist = [{ name = "kframework", specifier = "==7.1.255" }] [package.metadata.requires-dev] dev = [ @@ -752,11 +752,11 @@ wheels = [ [[package]] name = "pluggy" -version = "1.5.0" +version = "1.6.0" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/96/2d/02d4312c973c6050a18b314a5ad0b3210edb65a906f868e31c111dede4a6/pluggy-1.5.0.tar.gz", hash = "sha256:2cffa88e94fdc978c4c574f15f9e59b7f4201d439195c3715ca9e2486f1d0cf1", size = 67955, upload-time = "2024-04-20T21:34:42.531Z" } +sdist = { url = "https://files.pythonhosted.org/packages/f9/e2/3e91f31a7d2b083fe6ef3fa267035b518369d9511ffab804f839851d2779/pluggy-1.6.0.tar.gz", hash = "sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3", size = 69412, upload-time = "2025-05-15T12:30:07.975Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/88/5f/e351af9a41f866ac3f1fac4ca0613908d9a41741cfcf2228f4ad853b697d/pluggy-1.5.0-py3-none-any.whl", hash = "sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669", size = 20556, upload-time = "2024-04-20T21:34:40.434Z" }, + { url = "https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746", size = 20538, upload-time = "2025-05-15T12:30:06.134Z" }, ] [[package]] @@ -984,11 +984,11 @@ wheels = [ [[package]] name = "setuptools" -version = "80.4.0" +version = "80.7.1" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/95/32/0cc40fe41fd2adb80a2f388987f4f8db3c866c69e33e0b4c8b093fdf700e/setuptools-80.4.0.tar.gz", hash = "sha256:5a78f61820bc088c8e4add52932ae6b8cf423da2aff268c23f813cfbb13b4006", size = 1315008, upload-time = "2025-05-09T20:42:27.972Z" } +sdist = { url = "https://files.pythonhosted.org/packages/9e/8b/dc1773e8e5d07fd27c1632c45c1de856ac3dbf09c0147f782ca6d990cf15/setuptools-80.7.1.tar.gz", hash = "sha256:f6ffc5f0142b1bd8d0ca94ee91b30c0ca862ffd50826da1ea85258a06fd94552", size = 1319188, upload-time = "2025-05-15T02:41:00.955Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/b1/93/dba5ed08c2e31ec7cdc2ce75705a484ef0be1a2fecac8a58272489349de8/setuptools-80.4.0-py3-none-any.whl", hash = "sha256:6cdc8cb9a7d590b237dbe4493614a9b75d0559b888047c1f67d49ba50fc3edb2", size = 1200812, upload-time = "2025-05-09T20:42:25.325Z" }, + { url = "https://files.pythonhosted.org/packages/a1/18/0e835c3a557dc5faffc8f91092f62fc337c1dab1066715842e7a4b318ec4/setuptools-80.7.1-py3-none-any.whl", hash = "sha256:ca5cc1069b85dc23070a6628e6bcecb3292acac802399c7f8edc0100619f9009", size = 1200776, upload-time = "2025-05-15T02:40:58.887Z" }, ] [[package]] From f74ebf158564d29d6e0d4619e9730acb81442a14 Mon Sep 17 00:00:00 2001 From: devops Date: Thu, 15 May 2025 16:12:17 +0000 Subject: [PATCH 04/13] flake.{nix,lock}: update Nix derivations --- flake.lock | 16 ++++++++-------- flake.nix | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/flake.lock b/flake.lock index 0d81524f8..dfc42d73e 100644 --- a/flake.lock +++ b/flake.lock @@ -139,16 +139,16 @@ ] }, "locked": { - "lastModified": 1747086198, - "narHash": "sha256-mzkV552U01ZcKPtgvujQCtrq4B53VjC6CBhjR2Gjej8=", + "lastModified": 1747323097, + "narHash": "sha256-g3LguSpBOQbHnZkd6LYV9xbU/LWYJnqFMJ3q4F/LDOg=", "owner": "runtimeverification", "repo": "k", - "rev": "db2706d64499fda526e2a7b374bf24c32436e7c3", + "rev": "63894e083bdb7effed0d4b316fe913a0c147c3b7", "type": "github" }, "original": { "owner": "runtimeverification", - "ref": "v7.1.253", + "ref": "v7.1.255", "repo": "k", "type": "github" } @@ -170,16 +170,16 @@ "utils": "utils" }, "locked": { - "lastModified": 1745862770, - "narHash": "sha256-dIUmH96rZ138rYzsoVkUIXdVieQ98up1NEZ21yugJYE=", + "lastModified": 1747171992, + "narHash": "sha256-UQMgj0XGboF1klc2EvQxLDEhsuyDYBJRSnwDebIa7+0=", "owner": "runtimeverification", "repo": "llvm-backend", - "rev": "21339e2cab6fa442980546959f0a74d91ccd158f", + "rev": "489cfdbfa5478167ab23877f33c15e059757915f", "type": "github" }, "original": { "owner": "runtimeverification", - "ref": "v0.1.131", + "ref": "v0.1.132", "repo": "llvm-backend", "type": "github" } diff --git a/flake.nix b/flake.nix index 02e58b52d..d6a6433a4 100644 --- a/flake.nix +++ b/flake.nix @@ -1,7 +1,7 @@ { description = "kmir - "; inputs = { - k-framework.url = "github:runtimeverification/k/v7.1.253"; + k-framework.url = "github:runtimeverification/k/v7.1.255"; nixpkgs.follows = "k-framework/nixpkgs"; flake-utils.follows = "k-framework/flake-utils"; rv-utils.follows = "k-framework/rv-utils"; From 61995811f625d551eca0bb12ccfcb8413fc41c9a Mon Sep 17 00:00:00 2001 From: devops Date: Tue, 20 May 2025 20:59:29 +0000 Subject: [PATCH 05/13] Set Version: 0.3.169 --- kmir/pyproject.toml | 2 +- kmir/src/kmir/__init__.py | 2 +- kmir/uv.lock | 2 +- package/version | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/kmir/pyproject.toml b/kmir/pyproject.toml index ccf0f74a8..1b3bf744f 100644 --- a/kmir/pyproject.toml +++ b/kmir/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "kmir" -version = "0.3.168" +version = "0.3.169" description = "" requires-python = "~=3.10" dependencies = [ diff --git a/kmir/src/kmir/__init__.py b/kmir/src/kmir/__init__.py index 666ee9d16..56bc96dd3 100644 --- a/kmir/src/kmir/__init__.py +++ b/kmir/src/kmir/__init__.py @@ -1,3 +1,3 @@ from typing import Final -VERSION: Final = '0.3.168' +VERSION: Final = '0.3.169' diff --git a/kmir/uv.lock b/kmir/uv.lock index 06ba1aaac..88cb1f616 100644 --- a/kmir/uv.lock +++ b/kmir/uv.lock @@ -491,7 +491,7 @@ wheels = [ [[package]] name = "kmir" -version = "0.3.168" +version = "0.3.169" source = { editable = "." } dependencies = [ { name = "kframework" }, diff --git a/package/version b/package/version index 593d63c64..9222634a9 100644 --- a/package/version +++ b/package/version @@ -1 +1 @@ -0.3.168 +0.3.169 From ab19a221dcb58986d87161143650c9c3b93e14e0 Mon Sep 17 00:00:00 2001 From: devops Date: Tue, 20 May 2025 20:59:46 +0000 Subject: [PATCH 06/13] kmir/{pyproject.toml,uv.lock}: sync uv files, K version 7.1.255 --- kmir/uv.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/kmir/uv.lock b/kmir/uv.lock index 88cb1f616..cbd631b6c 100644 --- a/kmir/uv.lock +++ b/kmir/uv.lock @@ -403,16 +403,16 @@ wheels = [ [[package]] name = "hypothesis" -version = "6.131.17" +version = "6.131.20" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "attrs" }, { name = "exceptiongroup", marker = "python_full_version < '3.11'" }, { name = "sortedcontainers" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/da/cf/e16dcf27d9b5520ee145d9d69f572ff445a1fa609940fe8104cb225f6754/hypothesis-6.131.17.tar.gz", hash = "sha256:8901926baf6915494ba84353a4cbeaa845c6076d4a159c1d782e6969d4176829", size = 437606, upload-time = "2025-05-14T20:28:19.164Z" } +sdist = { url = "https://files.pythonhosted.org/packages/86/6f/865a4c877ed692c292c823fe836979f9d42428592f7c5de9a4ccf3a90334/hypothesis-6.131.20.tar.gz", hash = "sha256:725b3a9eb08a7655a709b19f1420529e8a75661f97edca28d6ac6ec9579a572a", size = 438014, upload-time = "2025-05-20T03:07:12.156Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/37/71/b18257e930ed2fad015d81b39c3388c181f66af921432164fbbfae1d6c9e/hypothesis-6.131.17-py3-none-any.whl", hash = "sha256:6df86f395b71b6b710dc834a072a5c381b5032be03ce289126dc4b5ba5689bff", size = 502102, upload-time = "2025-05-14T20:28:15.395Z" }, + { url = "https://files.pythonhosted.org/packages/ab/2c/4acd1130e0b381d5893af9f6b18b2949a57dd617b09203d79742629b4f13/hypothesis-6.131.20-py3-none-any.whl", hash = "sha256:4f6d97d5de8a4a09eb5acd4412d7795d7daa17356dd717011fa05cda4a603013", size = 502504, upload-time = "2025-05-20T03:07:08.465Z" }, ] [[package]] @@ -984,11 +984,11 @@ wheels = [ [[package]] name = "setuptools" -version = "80.7.1" +version = "80.8.0" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/9e/8b/dc1773e8e5d07fd27c1632c45c1de856ac3dbf09c0147f782ca6d990cf15/setuptools-80.7.1.tar.gz", hash = "sha256:f6ffc5f0142b1bd8d0ca94ee91b30c0ca862ffd50826da1ea85258a06fd94552", size = 1319188, upload-time = "2025-05-15T02:41:00.955Z" } +sdist = { url = "https://files.pythonhosted.org/packages/8d/d2/ec1acaaff45caed5c2dedb33b67055ba9d4e96b091094df90762e60135fe/setuptools-80.8.0.tar.gz", hash = "sha256:49f7af965996f26d43c8ae34539c8d99c5042fbff34302ea151eaa9c207cd257", size = 1319720, upload-time = "2025-05-20T14:02:53.503Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/a1/18/0e835c3a557dc5faffc8f91092f62fc337c1dab1066715842e7a4b318ec4/setuptools-80.7.1-py3-none-any.whl", hash = "sha256:ca5cc1069b85dc23070a6628e6bcecb3292acac802399c7f8edc0100619f9009", size = 1200776, upload-time = "2025-05-15T02:40:58.887Z" }, + { url = "https://files.pythonhosted.org/packages/58/29/93c53c098d301132196c3238c312825324740851d77a8500a2462c0fd888/setuptools-80.8.0-py3-none-any.whl", hash = "sha256:95a60484590d24103af13b686121328cc2736bee85de8936383111e421b9edc0", size = 1201470, upload-time = "2025-05-20T14:02:51.348Z" }, ] [[package]] @@ -1083,11 +1083,11 @@ wheels = [ [[package]] name = "types-python-dateutil" -version = "2.9.0.20241206" +version = "2.9.0.20250516" source = { registry = "https://pypi.org/simple" } -sdist = { url = "https://files.pythonhosted.org/packages/a9/60/47d92293d9bc521cd2301e423a358abfac0ad409b3a1606d8fbae1321961/types_python_dateutil-2.9.0.20241206.tar.gz", hash = "sha256:18f493414c26ffba692a72369fea7a154c502646301ebfe3d56a04b3767284cb", size = 13802, upload-time = "2024-12-06T02:56:41.019Z" } +sdist = { url = "https://files.pythonhosted.org/packages/ef/88/d65ed807393285204ab6e2801e5d11fbbea811adcaa979a2ed3b67a5ef41/types_python_dateutil-2.9.0.20250516.tar.gz", hash = "sha256:13e80d6c9c47df23ad773d54b2826bd52dbbb41be87c3f339381c1700ad21ee5", size = 13943, upload-time = "2025-05-16T03:06:58.385Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/0f/b3/ca41df24db5eb99b00d97f89d7674a90cb6b3134c52fb8121b6d8d30f15c/types_python_dateutil-2.9.0.20241206-py3-none-any.whl", hash = "sha256:e248a4bc70a486d3e3ec84d0dc30eec3a5f979d6e7ee4123ae043eedbb987f53", size = 14384, upload-time = "2024-12-06T02:56:39.412Z" }, + { url = "https://files.pythonhosted.org/packages/c5/3f/b0e8db149896005adc938a1e7f371d6d7e9eca4053a29b108978ed15e0c2/types_python_dateutil-2.9.0.20250516-py3-none-any.whl", hash = "sha256:2b2b3f57f9c6a61fba26a9c0ffb9ea5681c9b83e69cd897c6b5f668d9c0cab93", size = 14356, upload-time = "2025-05-16T03:06:57.249Z" }, ] [[package]] From 66d147d49ad37989440e28cbbca7c905f5cff1ec Mon Sep 17 00:00:00 2001 From: devops Date: Tue, 20 May 2025 21:45:31 +0000 Subject: [PATCH 07/13] Set Version: 0.3.170 --- kmir/pyproject.toml | 2 +- kmir/src/kmir/__init__.py | 2 +- kmir/uv.lock | 2 +- package/version | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/kmir/pyproject.toml b/kmir/pyproject.toml index 1b3bf744f..68b106852 100644 --- a/kmir/pyproject.toml +++ b/kmir/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "hatchling.build" [project] name = "kmir" -version = "0.3.169" +version = "0.3.170" description = "" requires-python = "~=3.10" dependencies = [ diff --git a/kmir/src/kmir/__init__.py b/kmir/src/kmir/__init__.py index 56bc96dd3..92cd7d43f 100644 --- a/kmir/src/kmir/__init__.py +++ b/kmir/src/kmir/__init__.py @@ -1,3 +1,3 @@ from typing import Final -VERSION: Final = '0.3.169' +VERSION: Final = '0.3.170' diff --git a/kmir/uv.lock b/kmir/uv.lock index cbd631b6c..2bc770b76 100644 --- a/kmir/uv.lock +++ b/kmir/uv.lock @@ -491,7 +491,7 @@ wheels = [ [[package]] name = "kmir" -version = "0.3.169" +version = "0.3.170" source = { editable = "." } dependencies = [ { name = "kframework" }, diff --git a/package/version b/package/version index 9222634a9..a71140a88 100644 --- a/package/version +++ b/package/version @@ -1 +1 @@ -0.3.169 +0.3.170 From 15b9885d6fe040de6b4ddba522ec9f416a3ffebd Mon Sep 17 00:00:00 2001 From: devops Date: Tue, 20 May 2025 21:45:40 +0000 Subject: [PATCH 08/13] deps/k_release: Set Version 7.1.257 --- deps/k_release | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/deps/k_release b/deps/k_release index 4cf3c679a..4a1919b7d 100644 --- a/deps/k_release +++ b/deps/k_release @@ -1 +1 @@ -7.1.255 +7.1.257 From 9fa1e6f77d83459d3f6166445fcfac40ee4baddf Mon Sep 17 00:00:00 2001 From: devops Date: Tue, 20 May 2025 21:45:56 +0000 Subject: [PATCH 09/13] kmir/{pyproject.toml,uv.lock}: sync uv files, K version 7.1.257 --- kmir/pyproject.toml | 2 +- kmir/uv.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/kmir/pyproject.toml b/kmir/pyproject.toml index 68b106852..e51950c3b 100644 --- a/kmir/pyproject.toml +++ b/kmir/pyproject.toml @@ -8,7 +8,7 @@ version = "0.3.170" description = "" requires-python = "~=3.10" dependencies = [ - "kframework==v7.1.255", + "kframework==v7.1.257", ] [[project.authors]] diff --git a/kmir/uv.lock b/kmir/uv.lock index 2bc770b76..e0dd4575d 100644 --- a/kmir/uv.lock +++ b/kmir/uv.lock @@ -468,7 +468,7 @@ wheels = [ [[package]] name = "kframework" -version = "7.1.255" +version = "7.1.257" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "coloredlogs" }, @@ -484,9 +484,9 @@ dependencies = [ { name = "tomli" }, { name = "xdg-base-dirs" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/29/63/364fa14d5880e881e75b94974231f1f40526e57eb1a9a7f289b26c115001/kframework-7.1.255.tar.gz", hash = "sha256:14594e34d03389a10893e05d5e4b5e8e9af3e76205cea8035cb9a3f2ebe1ba93", size = 240321, upload-time = "2025-05-15T16:09:53.195Z" } +sdist = { url = "https://files.pythonhosted.org/packages/ef/d7/09c614b28062af9fb4e152e2c59fb59ea43d7af87df2348abd6aa4b2e898/kframework-7.1.257.tar.gz", hash = "sha256:96c672daad18914e3887432a7692224b9aa018971cb64d1808d93bddefc77543", size = 241185, upload-time = "2025-05-20T20:22:24.59Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/14/2e/bde931da0b29f2f08a0967c286a85330fc61ae097a4f1f788d6ab174be7f/kframework-7.1.255-py3-none-any.whl", hash = "sha256:2c414b1529ae813db5c4f9b123c7b2b5feffa90771b0f2ce31945f4241bfbc2a", size = 290950, upload-time = "2025-05-15T16:09:51.549Z" }, + { url = "https://files.pythonhosted.org/packages/75/b9/19379eadd97d7d9a409b974d81305ee715a5064119418c51b6d20e1f450c/kframework-7.1.257-py3-none-any.whl", hash = "sha256:ab694729c59742d7118187d01d93f408b94152c139042941985f36346fa5c127", size = 292250, upload-time = "2025-05-20T20:22:22.717Z" }, ] [[package]] @@ -517,7 +517,7 @@ dev = [ ] [package.metadata] -requires-dist = [{ name = "kframework", specifier = "==7.1.255" }] +requires-dist = [{ name = "kframework", specifier = "==7.1.257" }] [package.metadata.requires-dev] dev = [ From 715e220cdf675811e3857748b604722499b05dd7 Mon Sep 17 00:00:00 2001 From: devops Date: Tue, 20 May 2025 21:46:01 +0000 Subject: [PATCH 10/13] flake.{nix,lock}: update Nix derivations --- flake.lock | 8 ++++---- flake.nix | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/flake.lock b/flake.lock index dfc42d73e..0142b16d7 100644 --- a/flake.lock +++ b/flake.lock @@ -139,16 +139,16 @@ ] }, "locked": { - "lastModified": 1747323097, - "narHash": "sha256-g3LguSpBOQbHnZkd6LYV9xbU/LWYJnqFMJ3q4F/LDOg=", + "lastModified": 1747770115, + "narHash": "sha256-zRYV6NxvDpBjyxqjuOMpzcNSQH7mfPGunITXtA0v7Bk=", "owner": "runtimeverification", "repo": "k", - "rev": "63894e083bdb7effed0d4b316fe913a0c147c3b7", + "rev": "acb7d1e17ad0ac1e52e38c07de7f2b1ac203ff77", "type": "github" }, "original": { "owner": "runtimeverification", - "ref": "v7.1.255", + "ref": "v7.1.257", "repo": "k", "type": "github" } diff --git a/flake.nix b/flake.nix index d6a6433a4..a705486f6 100644 --- a/flake.nix +++ b/flake.nix @@ -1,7 +1,7 @@ { description = "kmir - "; inputs = { - k-framework.url = "github:runtimeverification/k/v7.1.255"; + k-framework.url = "github:runtimeverification/k/v7.1.257"; nixpkgs.follows = "k-framework/nixpkgs"; flake-utils.follows = "k-framework/flake-utils"; rv-utils.follows = "k-framework/rv-utils"; From e3bd4aa7c01810e6cdd00f42ff177251512b7286 Mon Sep 17 00:00:00 2001 From: Everett Hildenbrandt Date: Wed, 21 May 2025 00:05:17 +0000 Subject: [PATCH 11/13] kmir/{kmir,__main__}: switch to using CTermShow for node printing --- kmir/src/kmir/__main__.py | 12 +++++++++--- kmir/src/kmir/kmir.py | 16 +++++++--------- kmir/src/tests/integration/test_integration.py | 16 ++++++++++++++-- 3 files changed, 30 insertions(+), 14 deletions(-) diff --git a/kmir/src/kmir/__main__.py b/kmir/src/kmir/__main__.py index 1df47d6b7..ccf260664 100644 --- a/kmir/src/kmir/__main__.py +++ b/kmir/src/kmir/__main__.py @@ -7,7 +7,9 @@ from typing import TYPE_CHECKING from pyk.cli.args import KCLIArgs +from pyk.cterm.show import CTermShow from pyk.kast.outer import KFlatModule, KImport +from pyk.kast.pretty import PrettyPrinter from pyk.proof.reachability import APRProof, APRProver from pyk.proof.show import APRProofShow from pyk.proof.tui import APRProofViewer @@ -115,7 +117,9 @@ def _kmir_view(opts: ViewOpts) -> None: smir_info = None if opts.smir_info is not None: smir_info = SMIRInfo.from_file(opts.smir_info) - node_printer = KMIRAPRNodePrinter(kmir, proof, smir_info=smir_info, full_printer=False) + printer = PrettyPrinter(kmir.definition) + cterm_show = CTermShow(printer.print) + node_printer = KMIRAPRNodePrinter(cterm_show, proof, smir_info=smir_info, full_printer=False) viewer = APRProofViewer(proof, kmir, node_printer=node_printer) viewer.run() @@ -126,8 +130,10 @@ def _kmir_show(opts: ShowOpts) -> None: smir_info = None if opts.smir_info is not None: smir_info = SMIRInfo.from_file(opts.smir_info) - node_printer = KMIRAPRNodePrinter(kmir, proof, smir_info=smir_info, full_printer=opts.full_printer) - shower = APRProofShow(kmir, node_printer=node_printer) + printer = PrettyPrinter(kmir.definition) + cterm_show = CTermShow(printer.print) + node_printer = KMIRAPRNodePrinter(cterm_show, proof, smir_info=smir_info, full_printer=opts.full_printer) + shower = APRProofShow(kmir.definition, node_printer=node_printer) lines = shower.show(proof) print('\n'.join(lines)) diff --git a/kmir/src/kmir/kmir.py b/kmir/src/kmir/kmir.py index 8d9b9f166..c5727fa33 100644 --- a/kmir/src/kmir/kmir.py +++ b/kmir/src/kmir/kmir.py @@ -31,6 +31,7 @@ from pathlib import Path from typing import Final + from pyk.cterm.show import CTermShow from pyk.kore.syntax import Pattern from pyk.utils import BugReport @@ -187,21 +188,18 @@ def is_terminal(self, cterm: CTerm) -> bool: class KMIRNodePrinter(NodePrinter): - kmir: KMIR - - def __init__(self, kmir: KMIR, full_printer: bool = False) -> None: - NodePrinter.__init__(self, kmir, full_printer=full_printer) - self.kmir = kmir + def __init__(self, cterm_show: CTermShow, full_printer: bool = False) -> None: + NodePrinter.__init__(self, cterm_show, full_printer=full_printer) class KMIRAPRNodePrinter(KMIRNodePrinter, APRProofNodePrinter): smir_info: SMIRInfo | None def __init__( - self, kmir: KMIR, proof: APRProof, smir_info: SMIRInfo | None = None, full_printer: bool = False + self, cterm_show: CTermShow, proof: APRProof, smir_info: SMIRInfo | None = None, full_printer: bool = False ) -> None: - KMIRNodePrinter.__init__(self, kmir, full_printer=full_printer) - APRProofNodePrinter.__init__(self, proof, kmir, full_printer=full_printer) + KMIRNodePrinter.__init__(self, cterm_show, full_printer=full_printer) + APRProofNodePrinter.__init__(self, proof, cterm_show, full_printer=full_printer) self.smir_info = smir_info def _span(self, node: KCFG.Node) -> int | None: @@ -246,7 +244,7 @@ def _function_name(self, node: KCFG.Node) -> str | None: def print_node(self, kcfg: KCFG, node: KCFG.Node) -> list[str]: ret_strs = super().print_node(kcfg, node) - ret_strs.append(self.kmir.pretty_print(node.cterm.cell('K_CELL'))[0:80]) + ret_strs.append(self.cterm_show._printer(node.cterm.cell('K_CELL'))[0:80]) curr_func = self._function_name(node) if curr_func is not None: ret_strs.append(f'function: {curr_func}') diff --git a/kmir/src/tests/integration/test_integration.py b/kmir/src/tests/integration/test_integration.py index 502530314..68875be49 100644 --- a/kmir/src/tests/integration/test_integration.py +++ b/kmir/src/tests/integration/test_integration.py @@ -6,7 +6,9 @@ from typing import TYPE_CHECKING import pytest +from pyk.cterm.show import CTermShow from pyk.kast.inner import KApply, KSort, KToken +from pyk.kast.pretty import PrettyPrinter from pyk.proof import Proof from pyk.proof.show import APRProofShow @@ -469,12 +471,17 @@ def test_prove_rs(rs_file: Path, kmir: KMIR, update_expected_output: bool) -> No apr_proof = kmir.prove_rs(prove_rs_opts) + printer = PrettyPrinter(kmir.definition) + cterm_show = CTermShow(printer.print) + if not should_fail: assert apr_proof.passed else: assert apr_proof.failed - shower = APRProofShow(kmir, node_printer=KMIRAPRNodePrinter(kmir, apr_proof, full_printer=False)) + shower = APRProofShow( + kmir.definition, node_printer=KMIRAPRNodePrinter(cterm_show, apr_proof, full_printer=False) + ) show_res = '\n'.join(shower.show(apr_proof)) assert_or_update_show_output( show_res, PROVING_DIR / f'show/{rs_file.stem}.expected', update=update_expected_output @@ -498,10 +505,15 @@ def test_prove_pinocchio(kmir: KMIR, update_expected_output: bool) -> None: ] prove_rs_opts = ProveRSOpts(pinocchio_token_program, smir=True) + printer = PrettyPrinter(kmir.definition) + cterm_show = CTermShow(printer.print) + for start_symbol in start_symbols: prove_rs_opts.start_symbol = start_symbol apr_proof = kmir.prove_rs(prove_rs_opts) - shower = APRProofShow(kmir, node_printer=KMIRAPRNodePrinter(kmir, apr_proof, full_printer=True)) + shower = APRProofShow( + kmir.definition, node_printer=KMIRAPRNodePrinter(cterm_show, apr_proof, full_printer=True) + ) show_res = '\n'.join(shower.show(apr_proof)) assert_or_update_show_output( show_res, From 9758d12256ef6f30d47ead2cbaa0691425dbcc3a Mon Sep 17 00:00:00 2001 From: devops Date: Wed, 21 May 2025 00:05:30 +0000 Subject: [PATCH 12/13] kmir/{pyproject.toml,uv.lock}: sync uv files, K version 7.1.257 --- kmir/uv.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/kmir/uv.lock b/kmir/uv.lock index e0dd4575d..9968011ce 100644 --- a/kmir/uv.lock +++ b/kmir/uv.lock @@ -173,14 +173,14 @@ wheels = [ [[package]] name = "click" -version = "8.2.0" +version = "8.2.1" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "colorama", marker = "sys_platform == 'win32'" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/cd/0f/62ca20172d4f87d93cf89665fbaedcd560ac48b465bd1d92bfc7ea6b0a41/click-8.2.0.tar.gz", hash = "sha256:f5452aeddd9988eefa20f90f05ab66f17fce1ee2a36907fd30b05bbb5953814d", size = 235857, upload-time = "2025-05-10T22:21:03.111Z" } +sdist = { url = "https://files.pythonhosted.org/packages/60/6c/8ca2efa64cf75a977a0d7fac081354553ebe483345c734fb6b6515d96bbc/click-8.2.1.tar.gz", hash = "sha256:27c491cc05d968d271d5a1db13e3b5a184636d9d930f148c50b038f0d0646202", size = 286342, upload-time = "2025-05-20T23:19:49.832Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/a2/58/1f37bf81e3c689cc74ffa42102fa8915b59085f54a6e4a80bc6265c0f6bf/click-8.2.0-py3-none-any.whl", hash = "sha256:6b303f0b2aa85f1cb4e5303078fadcbcd4e476f114fab9b5007005711839325c", size = 102156, upload-time = "2025-05-10T22:21:01.352Z" }, + { url = "https://files.pythonhosted.org/packages/85/32/10bb5764d90a8eee674e9dc6f4db6a0ab47c8c4d0d83c27f7c39ac415a4d/click-8.2.1-py3-none-any.whl", hash = "sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b", size = 102215, upload-time = "2025-05-20T23:19:47.796Z" }, ] [[package]] From 07e25c160dd1b704b9b3618886d13ff07af8db56 Mon Sep 17 00:00:00 2001 From: Everett Hildenbrandt Date: Wed, 21 May 2025 00:20:56 +0000 Subject: [PATCH 13/13] kmir/tests/pinocchio: update expected output --- ...essor::transfer::process_transfer.expected | 437 ++++++++++++++---- 1 file changed, 347 insertions(+), 90 deletions(-) diff --git a/kmir/src/tests/integration/data/prove-smir/show/pinocchio_token_program.smir.processor::transfer::process_transfer.expected b/kmir/src/tests/integration/data/prove-smir/show/pinocchio_token_program.smir.processor::transfer::process_transfer.expected index d18d1e247..b9cd6b759 100644 --- a/kmir/src/tests/integration/data/prove-smir/show/pinocchio_token_program.smir.processor::transfer::process_transfer.expected +++ b/kmir/src/tests/integration/data/prove-smir/show/pinocchio_token_program.smir.processor::transfer::process_transfer.expected @@ -5,38 +5,19 @@ │ │ #execTerminator ( terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 0 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 143 ) , id: mirConstId ( 0 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 0 ) ) ) │ -│ -│ RETVAL_CELL -│ -│ -│ CURRENTFUNC_CELL -│ -│ -│ CURRENTBODY_CELL -│ -│ -│ CALLER_CELL -│ -│ -│ DEST_CELL -│ -│ -│ TARGET_CELL -│ -│ -│ UNWIND_CELL -│ -│ ListItem ( newLocal ( ty ( 0 ) , mutabilityNot ) ) ListItem ( typedValue ( Reference ( 0 , place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , mutabilityNot ) , ty ( 65 ) , mutabilityNot ) ) ListItem ( typedValue ( Reference ( 0 , place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , mutabilityNot ) , ty ( 81 ) , mutabilityNot ) ) ListItem ( typedValue ( Range ( ARG_ARRAY1 ) , ty ( 250 ) , mutabilityNot ) ) ListItem ( typedValue ( Range ( ARG_ARRAY2 ) , ty ( 249 ) , mutabilityNot ) ) +│ ListItem ( newLocal ( ty ( 0 ) , mutabilityNot ) ) +│ ListItem ( typedValue ( Reference ( 0 , place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , mutabilityNot ) , ty ( 65 ) , mutabilityNot ) ) +│ ListItem ( typedValue ( Reference ( 0 , place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , mutabilityNot ) , ty ( 81 ) , mutabilityNot ) ) +│ ListItem ( typedValue ( Range ( ARG_ARRAY1 ) , ty ( 250 ) , mutabilityNot ) ) +│ ListItem ( typedValue ( Range ( ARG_ARRAY2 ) , ty ( 249 ) , mutabilityNot ) ) │ +│ ... │ │ .List │ -│ -│ MEMORY_CELL -│ │ #mkFunctionMap ( ListItem ( functionName ( ty ( 2 ) , functionIntrinsic ( symbol ( "exact_div" ) ) ) ) ListItem ( functionName ( ty ( 3 ) , functionIntrinsic ( symbol ( "cttz_nonzero" ) ) ) ) ListItem ( functionName ( ty ( 4 ) , functionNormalSym ( symbol ( "_ZN4core3ptr12align_offset7mod_inv17h59240894759df3e1E" ) ) ) ) ListItem ( functionName ( ty ( 11 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5error184_$LT$impl$u20$core..convert..From$LT$pinocchio_token_program..spl_token_interface..error..TokenError$GT$$u20$for$u20$pinocchio_token_program..pinocchio..program_error..ProgramError$GT$4from17h299ddf44070a22afE" ) ) ) ) ListItem ( functionName ( ty ( 16 ) , functionNormalSym ( symbol ( "_ZN50_$LT$T$u20$as$u20$core..convert..From$LT$T$GT$$GT$4from17h0f450030d7b16287E" ) ) ) ) ListItem ( functionName ( ty ( 18 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9processor8transfer16process_transfer28_$u7b$$u7b$closure$u7d$$u7d$17h36f7110a4261886cE" ) ) ) ) ListItem ( functionName ( ty ( 25 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state4load28_$u7b$$u7b$closure$u7d$$u7d$17hb299fa9536bc8dfaE" ) ) ) ) ListItem ( functionName ( ty ( 30 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state8load_mut28_$u7b$$u7b$closure$u7d$$u7d$17h1a7ba9581bcfbd2fE" ) ) ) ) ListItem ( functionName ( ty ( 35 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state4load28_$u7b$$u7b$closure$u7d$$u7d$17h17e3ab28996f0cc5E" ) ) ) ) ListItem ( functionName ( ty ( 40 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state4load28_$u7b$$u7b$closure$u7d$$u7d$17h6343ef1c2b462d53E" ) ) ) ) ListItem ( functionName ( ty ( 57 ) , functionNormalSym ( symbol ( "_ZN121_$LT$pinocchio_token_program..spl_token_interface..state..account_state..AccountState$u20$as$u20$core..cmp..PartialEq$GT$2eq17hc7a68f1ed5a7309cE" ) ) ) ) ListItem ( functionName ( ty ( 59 ) , functionNormalSym ( symbol ( "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_add18precondition_check17hac9716049b007ba0E" ) ) ) ) ListItem ( functionName ( ty ( 60 ) , functionNormalSym ( symbol ( "_ZN102_$LT$pinocchio_token_program..pinocchio..account_info..AccountInfo$u20$as$u20$core..cmp..PartialEq$GT$2eq17h28dc9605aa781581E" ) ) ) ) ListItem ( functionName ( ty ( 63 ) , functionNormalSym ( symbol ( "_ZN4core5slice4iter13Iter$LT$T$GT$3new17hd3005d5f3d8a8785E" ) ) ) ) ListItem ( functionName ( ty ( 66 ) , functionNormalSym ( symbol ( "_ZN4core5slice5index24slice_end_index_len_fail17h7e6f2137e7855a34E" ) ) ) ) ListItem ( functionName ( ty ( 69 ) , functionNormalSym ( symbol ( "_ZN4core5slice5index22slice_index_order_fail17h64068df90ca47128E" ) ) ) ) ListItem ( functionName ( ty ( 75 ) , functionNormalSym ( symbol ( "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb201fdb21468574fE" ) ) ) ) ListItem ( functionName ( ty ( 83 ) , functionNormalSym ( symbol ( "_ZN106_$LT$core..ops..range..Range$LT$usize$GT$$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h18a1c31963fd206bE" ) ) ) ) ListItem ( functionName ( ty ( 84 ) , functionIntrinsic ( symbol ( "ctpop" ) ) ) ) ListItem ( functionName ( ty ( 86 ) , functionNormalSym ( symbol ( "_ZN4core9panicking14panic_nounwind17h3a5ca15c2000251eE" ) ) ) ) ListItem ( functionName ( ty ( 88 ) , functionNormalSym ( symbol ( "_ZN4core9panicking9panic_fmt17h3df1a4d3dd80ed56E" ) ) ) ) ListItem ( functionName ( ty ( 96 ) , functionNormalSym ( symbol ( "_ZN4core3cmp9PartialEq2ne17hc5e53150790474f4E" ) ) ) ) ListItem ( functionName ( ty ( 98 ) , functionNormalSym ( symbol ( "_ZN158_$LT$pinocchio_token_program..spl_token_interface..state..multisig..Multisig$u20$as$u20$pinocchio_token_program..spl_token_interface..state..Initializable$GT$14is_initialized17h7baf6e53845781a2E" ) ) ) ) ListItem ( functionName ( ty ( 99 ) , functionNormalSym ( symbol ( "_ZN150_$LT$pinocchio_token_program..spl_token_interface..state..mint..Mint$u20$as$u20$pinocchio_token_program..spl_token_interface..state..Initializable$GT$14is_initialized17hdbcd15df1771109eE" ) ) ) ) ListItem ( functionName ( ty ( 100 ) , functionNormalSym ( symbol ( "_ZN156_$LT$pinocchio_token_program..spl_token_interface..state..account..Account$u20$as$u20$pinocchio_token_program..spl_token_interface..state..Initializable$GT$14is_initialized17h4d177dca65fb9500E" ) ) ) ) ListItem ( functionName ( ty ( 103 ) , functionNormalSym ( symbol ( "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17hc4a9c6fb271ffcdaE" ) ) ) ) ListItem ( functionName ( ty ( 107 ) , functionNormalSym ( symbol ( "_ZN91_$LT$core..slice..iter..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h1a010804f2f6a251E" ) ) ) ) ListItem ( functionName ( ty ( 118 ) , functionNormalSym ( symbol ( "_ZN4core5array98_$LT$impl$u20$core..convert..TryFrom$LT$$RF$$u5b$T$u5d$$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$8try_from17h9565faa93e83dbafE" ) ) ) ) ListItem ( functionName ( ty ( 120 ) , functionIntrinsic ( symbol ( "assert_inhabited" ) ) ) ) ListItem ( functionName ( ty ( 137 ) , functionNormalSym ( symbol ( "_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$11split_first17h9388ba3496ada316E" ) ) ) ) ListItem ( functionName ( ty ( 138 ) , functionNormalSym ( symbol ( "_ZN4core6option15Option$LT$T$GT$5ok_or17hf4ba5e3f3c18467cE" ) ) ) ) ListItem ( functionName ( ty ( 139 ) , functionNormalSym ( symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17h356cc9c9272ba50eE" ) ) ) ) ListItem ( functionName ( ty ( 141 ) , functionNormalSym ( symbol ( "_ZN153_$LT$core..result..Result$LT$T$C$F$GT$$u20$as$u20$core..ops..try_trait..FromResidual$LT$core..result..Result$LT$core..convert..Infallible$C$E$GT$$GT$$GT$13from_residual17hfd29a50dfe6eb5e5E" ) ) ) ) ListItem ( functionName ( ty ( 142 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program10entrypoint29process_remaining_instruction17h559be1edb721b49fE" ) ) ) ) ListItem ( functionName ( ty ( 143 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9processor8transfer16process_transfer17h279f3fafdc8a6f45E" ) ) ) ) ListItem ( functionName ( ty ( 144 ) , functionNormalSym ( symbol ( "_ZN53_$LT$T$u20$as$u20$core..convert..TryInto$LT$U$GT$$GT$8try_into17hb940bd041d406b34E" ) ) ) ) ListItem ( functionName ( ty ( 145 ) , functionNormalSym ( symbol ( "_ZN4core6result19Result$LT$T$C$E$GT$7map_err17hf31582bd2f867d48E" ) ) ) ) ListItem ( functionName ( ty ( 146 ) , functionNormalSym ( symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17hf59ecb4ca02351b3E" ) ) ) ) ListItem ( functionName ( ty ( 147 ) , functionNormalSym ( symbol ( "_ZN4core3num21_$LT$impl$u20$u64$GT$13from_le_bytes17h8e07166cf7dd64ebE" ) ) ) ) ListItem ( functionName ( ty ( 148 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9processor6shared8transfer16process_transfer17h6f463e095b5a3543E" ) ) ) ) ListItem ( functionName ( ty ( 151 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo25borrow_mut_data_unchecked17h33c2d00c470b2d5fE" ) ) ) ) ListItem ( functionName ( ty ( 153 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state8load_mut17h058ce9ca416b22c3E" ) ) ) ) ListItem ( functionName ( ty ( 154 ) , functionNormalSym ( symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17h7f8c81d6f4255069E" ) ) ) ) ListItem ( functionName ( ty ( 155 ) , functionNormalSym ( symbol ( "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17hc97d6e8fba4554dbE" ) ) ) ) ListItem ( functionName ( ty ( 156 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account9is_frozen17h0aac5dab00a6758aE" ) ) ) ) ListItem ( functionName ( ty ( 157 ) , functionNormalSym ( symbol ( "_ZN50_$LT$T$u20$as$u20$core..convert..Into$LT$U$GT$$GT$4into17h8083a4037d7ab233E" ) ) ) ) ListItem ( functionName ( ty ( 158 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account6amount17hb22d34edbefa9debE" ) ) ) ) ListItem ( functionName ( ty ( 159 ) , functionNormalSym ( symbol ( "_ZN4core3num21_$LT$impl$u20$u64$GT$11checked_sub17hdac38fbb299a96bfE" ) ) ) ) ListItem ( functionName ( ty ( 160 ) , functionNormalSym ( symbol ( "_ZN4core6option15Option$LT$T$GT$5ok_or17hf5822471a1dc861dE" ) ) ) ) ListItem ( functionName ( ty ( 161 ) , functionNormalSym ( symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17h4c6e380533a37c4aE" ) ) ) ) ListItem ( functionName ( ty ( 162 ) , functionNormalSym ( symbol ( "_ZN153_$LT$core..result..Result$LT$T$C$F$GT$$u20$as$u20$core..ops..try_trait..FromResidual$LT$core..result..Result$LT$core..convert..Infallible$C$E$GT$$GT$$GT$13from_residual17h5392b65045f6d36cE" ) ) ) ) ListItem ( functionName ( ty ( 163 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo21borrow_data_unchecked17hde9cb5e2a5af59a8E" ) ) ) ) ListItem ( functionName ( ty ( 164 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state4load17h7812633de2cfd50dE" ) ) ) ) ListItem ( functionName ( ty ( 165 ) , functionNormalSym ( symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17h8e90ec5b8045e1d3E" ) ) ) ) ListItem ( functionName ( ty ( 166 ) , functionNormalSym ( symbol ( "_ZN4core5array8equality103_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$2ne17h0fb34b0d6d9a75b4E" ) ) ) ) ListItem ( functionName ( ty ( 168 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo3key17hcf5620b5561c83c1E" ) ) ) ) ListItem ( functionName ( ty ( 169 ) , functionNormalSym ( symbol ( "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2ne17h38394a91703d4bd8E" ) ) ) ) ListItem ( functionName ( ty ( 170 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state4load17he0e53646be5173d4E" ) ) ) ) ListItem ( functionName ( ty ( 171 ) , functionNormalSym ( symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17hed61ee0b144e79d3E" ) ) ) ) ListItem ( functionName ( ty ( 172 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account8delegate17hf8d55e6d3624aa60E" ) ) ) ) ListItem ( functionName ( ty ( 173 ) , functionNormalSym ( symbol ( "_ZN70_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17h07e018cef4f1ea96E" ) ) ) ) ListItem ( functionName ( ty ( 174 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9processor14validate_owner17h75cd30b8a1f9a14dE" ) ) ) ) ListItem ( functionName ( ty ( 175 ) , functionNormalSym ( symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17h42cf9404dc5ac3bfE" ) ) ) ) ListItem ( functionName ( ty ( 176 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account16delegated_amount17h506a119c984a3a62E" ) ) ) ) ListItem ( functionName ( ty ( 177 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account20set_delegated_amount17h36e06989aae58676E" ) ) ) ) ListItem ( functionName ( ty ( 178 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account14clear_delegate17h196f20e58aef9cf0E" ) ) ) ) ListItem ( functionName ( ty ( 179 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9processor19check_account_owner17hf377a05ff26ea912E" ) ) ) ) ListItem ( functionName ( ty ( 180 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account10set_amount17hce8ba8bc500c09edE" ) ) ) ) ListItem ( functionName ( ty ( 181 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state18load_mut_unchecked17h89bf3699b4f10f54E" ) ) ) ) ListItem ( functionName ( ty ( 182 ) , functionNormalSym ( symbol ( "_ZN4core3num21_$LT$impl$u20$u64$GT$11checked_add17hc204a6f2c17f56a7E" ) ) ) ) ListItem ( functionName ( ty ( 183 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account9is_native17hafd04a6654ce7707E" ) ) ) ) ListItem ( functionName ( ty ( 184 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo29borrow_mut_lamports_unchecked17h8cf4581da74fcdadE" ) ) ) ) ListItem ( functionName ( ty ( 187 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo5owner17h31d51cbf512d5e6dE" ) ) ) ) ListItem ( functionName ( ty ( 188 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo8data_len17hccfa1e6c1c534d65E" ) ) ) ) ListItem ( functionName ( ty ( 189 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state4load17h0bffb743f40bb743E" ) ) ) ) ListItem ( functionName ( ty ( 190 ) , functionNormalSym ( symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17h48559f5c574802adE" ) ) ) ) ListItem ( functionName ( ty ( 191 ) , functionNormalSym ( symbol ( "_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$4iter17hce5c7b3eb18f6a21E" ) ) ) ) ListItem ( functionName ( ty ( 192 ) , functionNormalSym ( symbol ( "_ZN63_$LT$I$u20$as$u20$core..iter..traits..collect..IntoIterator$GT$9into_iter17h56d62c2b17108258E" ) ) ) ) ListItem ( functionName ( ty ( 193 ) , functionNormalSym ( symbol ( "_ZN91_$LT$core..slice..iter..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hdf8e27f0344e0c70E" ) ) ) ) ListItem ( functionName ( ty ( 194 ) , functionNormalSym ( symbol ( "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17hb5e14e44b739a5c2E" ) ) ) ) ListItem ( functionName ( ty ( 196 ) , functionNormalSym ( symbol ( "_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$4iter17h258b4e53333a8b31E" ) ) ) ) ListItem ( functionName ( ty ( 197 ) , functionNormalSym ( symbol ( "_ZN4core4iter6traits8iterator8Iterator9enumerate17hdf2c5c8c843df457E" ) ) ) ) ListItem ( functionName ( ty ( 198 ) , functionNormalSym ( symbol ( "_ZN63_$LT$I$u20$as$u20$core..iter..traits..collect..IntoIterator$GT$9into_iter17h3f360ab6b3d5017aE" ) ) ) ) ListItem ( functionName ( ty ( 199 ) , functionNormalSym ( symbol ( "_ZN110_$LT$core..iter..adapters..enumerate..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h0182d2c27c24bd4bE" ) ) ) ) ListItem ( functionName ( ty ( 200 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo9is_signer17hd42ccfe1b598615aE" ) ) ) ) ListItem ( functionName ( ty ( 206 ) , functionNormalSym ( symbol ( "_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$3add17hb4e97bbd3efce39fE" ) ) ) ) ListItem ( functionName ( ty ( 208 ) , functionNormalSym ( symbol ( "_ZN4core3cmp3min17hccac4c123775008dE" ) ) ) ) ListItem ( functionName ( ty ( 209 ) , functionNormalSym ( symbol ( "_ZN63_$LT$I$u20$as$u20$core..iter..traits..collect..IntoIterator$GT$9into_iter17hdea3c09d7d980b4dE" ) ) ) ) ListItem ( functionName ( ty ( 210 ) , functionNormalSym ( symbol ( "_ZN4core4iter5range101_$LT$impl$u20$core..iter..traits..iterator..Iterator$u20$for$u20$core..ops..range..Range$LT$A$GT$$GT$4next17he6508e31ef4ed488E" ) ) ) ) ListItem ( functionName ( ty ( 211 ) , functionNormalSym ( symbol ( "_ZN4core3ptr9const_ptr33_$LT$impl$u20$$BP$const$u20$T$GT$12align_offset17h3def8623743afed2E" ) ) ) ) ListItem ( functionName ( ty ( 212 ) , functionNormalSym ( symbol ( "_ZN4core3mem7size_of17h190c62b2c01482a7E" ) ) ) ) ListItem ( functionName ( ty ( 213 ) , functionNormalSym ( symbol ( "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$5write17he7a27faf8cc0250cE" ) ) ) ) ListItem ( functionName ( ty ( 214 ) , functionNormalSym ( symbol ( "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$15assume_init_ref17h49b93055e9641e33E" ) ) ) ) ListItem ( functionName ( ty ( 215 ) , functionNormalSym ( symbol ( "_ZN100_$LT$pinocchio_token_program..pinocchio..account_info..AccountInfo$u20$as$u20$core..clone..Clone$GT$5clone17h895c5ec0358f0a65E" ) ) ) ) ListItem ( functionName ( ty ( 216 ) , functionNormalSym ( symbol ( "_ZN4core3mem7size_of17h43a46ed0d83a8a91E" ) ) ) ) ListItem ( functionName ( ty ( 217 ) , functionNormalSym ( symbol ( "_ZN4core5slice3raw14from_raw_parts17h0cb086e10bbe17d2E" ) ) ) ) ListItem ( functionName ( ty ( 221 ) , functionNormalSym ( symbol ( "_ZN4core3num21_$LT$impl$u20$u64$GT$11to_le_bytes17h463964a3db41004fE" ) ) ) ) ListItem ( functionName ( ty ( 224 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state14load_unchecked17h834565201b9406aaE" ) ) ) ) ListItem ( functionName ( ty ( 225 ) , functionNormalSym ( symbol ( "_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h9870b4514bdb3c4aE" ) ) ) ) ListItem ( functionName ( ty ( 226 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state14load_unchecked17h4c5b59b1e1cb8837E" ) ) ) ) ListItem ( functionName ( ty ( 227 ) , functionNormalSym ( symbol ( "_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h3ace95523305ebc9E" ) ) ) ) ListItem ( functionName ( ty ( 228 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state14load_unchecked17hfe53b52a02f1309aE" ) ) ) ) ListItem ( functionName ( ty ( 229 ) , functionNormalSym ( symbol ( "_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hffafe4f6d15775b7E" ) ) ) ) ListItem ( functionName ( ty ( 230 ) , functionNormalSym ( symbol ( "_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$6as_ptr17h0774186319deab30E" ) ) ) ) ListItem ( functionName ( ty ( 234 ) , functionNormalSym ( symbol ( "_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h62dbf942495d3e86E" ) ) ) ) ListItem ( functionName ( ty ( 235 ) , functionNormalSym ( symbol ( "_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h8b64d81adbb574adE" ) ) ) ) ListItem ( functionName ( ty ( 237 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9pinocchio10entrypoint11deserialize17h90e24b1c5a7dae61E" ) ) ) ) ListItem ( functionName ( ty ( 238 ) , functionNormalSym ( symbol ( "_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$6as_ptr17hdef1b7ee4a549402E" ) ) ) ) ListItem ( functionName ( ty ( 239 ) , functionNormalSym ( symbol ( "_ZN4core5slice3raw14from_raw_parts17hd7f3d4abbfc2f8c5E" ) ) ) ) ListItem ( functionName ( ty ( 240 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program10entrypoint19process_instruction17hc81a8e7a2ee34927E" ) ) ) ) ListItem ( functionName ( ty ( 241 ) , functionNormalSym ( symbol ( "_ZN50_$LT$T$u20$as$u20$core..convert..Into$LT$U$GT$$GT$4into17h76fa1d018188f3efE" ) ) ) ) ListItem ( functionName ( ty ( 248 ) , functionNormalSym ( symbol ( "_ZN4core5slice3raw14from_raw_parts18precondition_check17h922514f9fa21a8c6E" ) ) ) ) ListItem ( functionName ( ty ( 252 ) , functionNormalSym ( symbol ( "_ZN4core5slice3raw18from_raw_parts_mut18precondition_check17h3a4f666c89dfccefE" ) ) ) ) ListItem ( functionName ( ty ( 253 ) , functionIntrinsic ( symbol ( "cold_path" ) ) ) ) ListItem ( functionName ( ty ( 255 ) , functionNormalSym ( symbol ( "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_eq17h0b9752366ca6859eE" ) ) ) ) ListItem ( functionName ( ty ( 256 ) , functionNormalSym ( symbol ( "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_ne17h53811930bf603038E" ) ) ) ) ListItem ( functionName ( ty ( 257 ) , functionIntrinsic ( symbol ( "raw_eq" ) ) ) ) ListItem ( functionName ( ty ( 276 ) , functionNormalSym ( symbol ( "_ZN4core3cmp6min_by17hc7c71774e3e994ccE" ) ) ) ) ListItem ( functionName ( ty ( 278 ) , functionNormalSym ( symbol ( "_ZN4core3cmp3Ord3min17h406d979053f4337cE" ) ) ) ) ListItem ( functionName ( ty ( 279 ) , functionNormalSym ( symbol ( "_ZN4core3ops8function6FnOnce9call_once17h4fdcbae49066370aE" ) ) ) ) ListItem ( functionName ( ty ( 282 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9pinocchio13program_error124_$LT$impl$u20$core..convert..From$LT$pinocchio_token_program..pinocchio..program_error..ProgramError$GT$$u20$for$u20$u64$GT$4from17hd0718b4c2b5d73bfE" ) ) ) ) ListItem ( functionName ( ty ( 284 ) , functionNormalSym ( symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo8data_ptr17h5341cd226b8ba10fE" ) ) ) ) ListItem ( functionName ( ty ( 285 ) , functionNormalSym ( symbol ( "_ZN4core5slice3raw18from_raw_parts_mut17h419bd653fd71b71cE" ) ) ) ) ListItem ( functionName ( ty ( 287 ) , functionNormalSym ( symbol ( "_ZN4core5array8equality103_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$2eq17hb2e0318093479fbfE" ) ) ) ) ListItem ( functionName ( ty ( 288 ) , functionNormalSym ( symbol ( "_ZN4core3ptr12align_offset17hfd0acb553f006ff2E" ) ) ) ) ListItem ( functionName ( ty ( 289 ) , functionNormalSym ( symbol ( "_ZN4core5slice4iter13Iter$LT$T$GT$3new17h68ed085bbafa251dE" ) ) ) ) ListItem ( functionName ( ty ( 290 ) , functionNormalSym ( symbol ( "_ZN89_$LT$core..ops..range..Range$LT$T$GT$$u20$as$u20$core..iter..range..RangeIteratorImpl$GT$9spec_next17h3a01ca6db731d62bE" ) ) ) ) ListItem ( functionName ( ty ( 291 ) , functionNormalSym ( symbol ( "_ZN4core3cmp5impls57_$LT$impl$u20$core..cmp..PartialOrd$u20$for$u20$usize$GT$2lt17h523d0446a8724884E" ) ) ) ) ListItem ( functionName ( ty ( 292 ) , functionNormalSym ( symbol ( "_ZN49_$LT$usize$u20$as$u20$core..iter..range..Step$GT$17forward_unchecked17he0aed2eaac1f9d1fE" ) ) ) ) ListItem ( functionName ( ty ( 297 ) , functionNoop ( symbol ( "" ) ) ) ) ListItem ( functionName ( ty ( 313 ) , functionNoop ( symbol ( "" ) ) ) ) ListItem ( functionName ( ty ( 314 ) , functionNoop ( symbol ( "" ) ) ) ) ListItem ( functionName ( ty ( 315 ) , functionNoop ( symbol ( "" ) ) ) ) ListItem ( functionName ( ty ( 316 ) , functionNoop ( symbol ( "" ) ) ) ) ListItem ( functionName ( ty ( 317 ) , functionNoop ( symbol ( "" ) ) ) ) ListItem ( functionName ( ty ( 319 ) , functionNoop ( symbol ( "" ) ) ) ) ListItem ( functionName ( ty ( 320 ) , functionNoop ( symbol ( "" ) ) ) ) ListItem ( functionName ( ty ( 321 ) , functionNoop ( symbol ( "" ) ) ) ) , monoItem ( ... symbolName: symbol ( "_ZN100_$LT$pinocchio_token_program..pinocchio..account_info..AccountInfo$u20$as$u20$core..clone..Clone$GT$5clone17h895c5ec0358f0a65E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "::clone" ) , id: defId ( 95 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 1621 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1622 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 56 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1623 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1620 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 124 ) , span: span ( 1624 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1625 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1622 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 283 ) , span: span ( 1621 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1625 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1626 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN102_$LT$pinocchio_token_program..pinocchio..account_info..AccountInfo$u20$as$u20$core..cmp..PartialEq$GT$2eq17h28dc9605aa781581E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "::eq" ) , id: defId ( 96 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) ) , span: span ( 1628 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) ) , span: span ( 1629 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1630 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1627 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1631 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1632 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1633 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1628 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1629 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1632 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1633 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1634 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN106_$LT$core..ops..range..Range$LT$usize$GT$$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h18a1c31963fd206bE" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::slice::SliceIndex<[[u8; 32]]>>::index" ) , id: defId ( 15 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 208 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 209 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 210 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 207 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 207 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 207 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 211 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 66 ) , id: mirConstId ( 18 ) ) ) ) , args: operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 212 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 214 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 215 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 216 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 216 ) ) statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 215 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 217 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 218 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandCopy ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 219 ) ) statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 217 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindRawPtr ( ty ( 68 ) , mutabilityNot ) , operandCopy ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 220 ) ) statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 215 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 221 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 11 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 222 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 223 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 213 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 226 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 227 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 224 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 69 ) , id: mirConstId ( 19 ) ) ) ) , args: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 225 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 229 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 230 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 231 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 232 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 226 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 233 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 227 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 228 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 234 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGt , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 228 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 228 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 70 ) , span: span ( 235 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 236 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 70 ) , span: span ( 237 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 72 ) , span: span ( 238 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 233 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 73 ) , span: span ( 208 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 209 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 210 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 228 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 234 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 212 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 74 ) , span: span ( 215 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 74 ) , span: span ( 216 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 207 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 229 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 239 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 67 ) , span: span ( 240 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 236 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 237 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "new_len" ) , sourceInfo: sourceInfo ( ... span: span ( 233 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 241 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 242 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 243 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "offset" ) , sourceInfo: sourceInfo ( ... span: span ( 244 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 245 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 239 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 246 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "index" ) , sourceInfo: sourceInfo ( ... span: span ( 247 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 240 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 248 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN110_$LT$core..iter..adapters..enumerate..Enumerate$LT$I$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h0182d2c27c24bd4bE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "> as core::iter::Iterator>::next" ) , id: defId ( 31 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 451 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 450 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 453 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindTwoPhaseBorrow ) , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 108 ) ) .ProjectionElems ) ) ) , span: span ( 453 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 449 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 107 ) , id: mirConstId ( 43 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 450 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 455 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 456 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 7 ) ) branch ( 1 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 454 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 8 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 458 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 459 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 460 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 460 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 459 ) ) statement ( ... kind: statementKindStorageDead ( local ( 10 ) ) , span: span ( 461 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 109 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 462 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 463 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 464 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 457 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 457 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 6 ) , unwind: unwindActionTerminate ) , span: span ( 464 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindResume , span: span ( 465 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 109 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 467 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 468 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 464 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 457 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 4 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 104 ) ) .ProjectionElems ) ) ) ) , span: span ( 470 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 110 ) ) genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 471 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 466 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 472 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 104 ) ) .ProjectionElems ) ) ) ) , span: span ( 472 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 472 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 468 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 469 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 458 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 8 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 469 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) , target: basicBlockIdx ( 3 ) , unwind: unwindActionCleanup ( basicBlockIdx ( 5 ) ) ) , span: span ( 458 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 111 ) , span: span ( 475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 112 ) , span: span ( 476 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 451 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 113 ) , span: span ( 452 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 114 ) , span: span ( 450 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 115 ) , span: span ( 453 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 472 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 477 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 116 ) , span: span ( 458 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 109 ) , span: span ( 459 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 460 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 478 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 470 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 476 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 451 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 479 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 110 ) , id: mirConstId ( 44 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 472 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "i" ) , sourceInfo: sourceInfo ( ... span: span ( 477 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 480 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 470 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 481 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 110 ) , id: mirConstId ( 44 ) ) ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 465 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN121_$LT$pinocchio_token_program..spl_token_interface..state..account_state..AccountState$u20$as$u20$core..cmp..PartialEq$GT$2eq17hc7a68f1ed5a7309cE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "::eq" ) , id: defId ( 11 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 170 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 171 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 172 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 169 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 173 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 58 ) , span: span ( 174 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 58 ) , span: span ( 175 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 176 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 177 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 174 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 175 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "__self_discr" ) , sourceInfo: sourceInfo ( ... span: span ( 176 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "__arg1_discr" ) , sourceInfo: sourceInfo ( ... span: span ( 177 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 178 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN150_$LT$pinocchio_token_program..spl_token_interface..state..mint..Mint$u20$as$u20$pinocchio_token_program..spl_token_interface..state..Initializable$GT$14is_initialized17hdbcd15df1771109eE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "::is_initialized" ) , id: defId ( 25 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 390 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 391 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) ) , span: span ( 392 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 389 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 393 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 394 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 390 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 394 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 395 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN153_$LT$core..result..Result$LT$T$C$F$GT$$u20$as$u20$core..ops..try_trait..FromResidual$LT$core..result..Result$LT$core..convert..Infallible$C$E$GT$$GT$$GT$13from_residual17h5392b65045f6d36cE" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::ops::FromResidual>>::from_residual" ) , id: defId ( 3 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 12 ) ) .ProjectionElems ) ) ) ) , span: span ( 102 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 101 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 100 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 11 ) , id: mirConstId ( 7 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 101 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 104 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 105 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 103 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 106 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 107 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 12 ) , span: span ( 102 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 101 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 107 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 102 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 108 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN153_$LT$core..result..Result$LT$T$C$F$GT$$u20$as$u20$core..ops..try_trait..FromResidual$LT$core..result..Result$LT$core..convert..Infallible$C$E$GT$$GT$$GT$13from_residual17hfd29a50dfe6eb5e5E" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::ops::FromResidual>>::from_residual" ) , id: defId ( 3 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 102 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 101 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 100 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 16 ) , id: mirConstId ( 8 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 101 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 104 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 105 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 103 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 106 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 107 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 102 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 101 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 107 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 102 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 108 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN156_$LT$pinocchio_token_program..spl_token_interface..state..account..Account$u20$as$u20$pinocchio_token_program..spl_token_interface..state..Initializable$GT$14is_initialized17h4d177dca65fb9500E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "::is_initialized" ) , id: defId ( 24 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 4 ) , ty ( 97 ) ) .ProjectionElems ) ) ) , span: span ( 383 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 384 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 4 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 58 ) , id: mirConstId ( 36 ) ) ) ) ) ) , span: span ( 384 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 382 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 96 ) , id: mirConstId ( 35 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 382 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 385 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 386 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 387 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 58 ) , span: span ( 383 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 58 ) , span: span ( 384 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 387 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 388 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN158_$LT$pinocchio_token_program..spl_token_interface..state..multisig..Multisig$u20$as$u20$pinocchio_token_program..spl_token_interface..state..Initializable$GT$14is_initialized17h7baf6e53845781a2E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "::is_initialized" ) , id: defId ( 26 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 2 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 397 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 398 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) ) , span: span ( 399 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 396 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 400 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 401 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 397 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 401 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 402 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program10entrypoint19process_instruction17hc81a8e7a2ee34927E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "entrypoint::process_instruction" ) , id: defId ( 43 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 601 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 137 ) , id: mirConstId ( 52 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 602 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 2 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 605 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 603 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 138 ) , id: mirConstId ( 53 ) ) ) ) , args: operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 604 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 606 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 139 ) , id: mirConstId ( 54 ) ) ) ) , args: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 606 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) ) , span: span ( 606 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) branch ( 1 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 606 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 606 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 45 ) ) .ProjectionElems ) ) ) ) , span: span ( 608 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 12 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 140 ) ) .ProjectionElems ) ) ) ) , span: span ( 609 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 12 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 81 ) ) .ProjectionElems ) ) ) ) , span: span ( 610 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 4 ) , projection: projectionElemDeref .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 3 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 7 ) ) ) , span: span ( 607 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 6 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 611 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 611 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 606 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 614 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 612 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 142 ) , id: mirConstId ( 56 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 613 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 615 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 143 ) , id: mirConstId ( 57 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 616 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 617 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 618 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 619 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 620 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 621 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 140 ) , span: span ( 609 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 610 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 46 ) , span: span ( 606 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 47 ) , span: span ( 604 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 101 ) , span: span ( 602 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 605 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 611 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 611 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 45 ) , span: span ( 608 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 614 ) , mut: mutabilityMut ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "_program_id" ) , sourceInfo: sourceInfo ( ... span: span ( 619 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 620 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 621 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "discriminator" ) , sourceInfo: sourceInfo ( ... span: span ( 609 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 610 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 611 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 608 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 622 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program10entrypoint29process_remaining_instruction17h559be1edb721b49fE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "entrypoint::process_remaining_instruction" ) , id: defId ( 44 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 2 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 624 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 625 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 623 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 626 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 627 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 628 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 629 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 624 ) , mut: mutabilityMut ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 627 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 628 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "discriminator" ) , sourceInfo: sourceInfo ( ... span: span ( 629 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 630 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5error184_$LT$impl$u20$core..convert..From$LT$pinocchio_token_program..spl_token_interface..error..TokenError$GT$$u20$for$u20$pinocchio_token_program..pinocchio..program_error..ProgramError$GT$4from17h299ddf44070a22afE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::error:: for pinocchio::program_error::ProgramError>::from" ) , id: defId ( 89 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 0 ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLe , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1574 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x13" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 194 ) ) ) ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindIntrinsic ( nonDivergingIntrinsicAssume ( operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 7 ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1575 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1573 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 8 ) , span: span ( 1576 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 1577 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 1574 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 1578 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1574 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1574 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 1577 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1579 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state14load_unchecked17h4c5b59b1e1cb8837E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_unchecked::" ) , id: defId ( 66 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1207 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1208 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xa5\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 142 ) ) ) ) ) ) , span: span ( 1206 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1206 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1210 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1211 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1212 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 230 ) , id: mirConstId ( 143 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1213 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 231 ) ) ) , span: span ( 1214 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1215 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1216 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1209 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 26 ) , span: span ( 1217 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1218 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1206 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1207 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1210 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1215 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 231 ) , span: span ( 1214 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1213 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1218 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1219 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state14load_unchecked17h834565201b9406aaE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_unchecked::" ) , id: defId ( 66 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1207 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1208 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x63\x01\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 102 ) ) ) ) ) ) , span: span ( 1206 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1206 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1210 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1211 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1212 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 230 ) , id: mirConstId ( 143 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1213 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 232 ) ) ) , span: span ( 1214 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1215 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1216 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1209 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 36 ) , span: span ( 1217 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1218 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1206 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1207 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1210 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 1215 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 232 ) , span: span ( 1214 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1213 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1218 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1219 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state14load_unchecked17hfe53b52a02f1309aE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_unchecked::" ) , id: defId ( 66 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1207 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1208 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x52\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 144 ) ) ) ) ) ) , span: span ( 1206 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1206 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1210 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1211 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1212 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 230 ) , id: mirConstId ( 143 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1213 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 233 ) ) ) , span: span ( 1214 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1215 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1216 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1209 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 41 ) , span: span ( 1217 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1218 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1206 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1207 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1210 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 1215 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 233 ) , span: span ( 1214 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1213 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1218 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1219 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state18load_mut_unchecked17h89bf3699b4f10f54E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_mut_unchecked::" ) , id: defId ( 68 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1229 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1230 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1231 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xa5\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 142 ) ) ) ) ) ) , span: span ( 1228 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1228 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1233 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1234 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1232 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1235 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 235 ) , id: mirConstId ( 147 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1236 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 236 ) ) ) , span: span ( 1237 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 7 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1238 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1239 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1232 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1232 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 31 ) , span: span ( 1240 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 1241 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1228 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1230 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1229 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1233 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 1238 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 236 ) , span: span ( 1237 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1236 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1241 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1242 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state4load17h0bffb743f40bb743E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::" ) , id: defId ( 65 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1198 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 224 ) , id: mirConstId ( 133 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1199 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1200 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 225 ) , id: mirConstId ( 134 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 37 ) , id: mirConstId ( 135 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1201 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1202 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 36 ) , span: span ( 1203 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1204 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 36 ) , span: span ( 1199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1204 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1205 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state4load17h7812633de2cfd50dE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::" ) , id: defId ( 65 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1198 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 226 ) , id: mirConstId ( 136 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1199 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1200 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 227 ) , id: mirConstId ( 137 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 27 ) , id: mirConstId ( 138 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1201 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1202 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 26 ) , span: span ( 1203 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1204 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 26 ) , span: span ( 1199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1204 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1205 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state4load17he0e53646be5173d4E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::" ) , id: defId ( 65 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1198 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 228 ) , id: mirConstId ( 139 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1199 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1200 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 229 ) , id: mirConstId ( 140 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 42 ) , id: mirConstId ( 141 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1201 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1202 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 41 ) , span: span ( 1203 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1204 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 41 ) , span: span ( 1199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1204 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1205 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state4load28_$u7b$$u7b$closure$u7d$$u7d$17h17e3ab28996f0cc5E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::::{closure#0}" ) , id: defId ( 27 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 98 ) , id: mirConstId ( 38 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 404 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 406 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 9 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 407 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 408 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 409 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 36 ) , span: span ( 410 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 37 ) , span: span ( 411 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 412 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 404 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 407 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 412 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 411 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state4load28_$u7b$$u7b$closure$u7d$$u7d$17h6343ef1c2b462d53E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::::{closure#0}" ) , id: defId ( 27 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 99 ) , id: mirConstId ( 39 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 404 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 406 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 9 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 407 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 408 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 409 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 41 ) , span: span ( 410 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 42 ) , span: span ( 411 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 412 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 404 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 407 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 412 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 411 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state4load28_$u7b$$u7b$closure$u7d$$u7d$17hb299fa9536bc8dfaE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::::{closure#0}" ) , id: defId ( 27 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 100 ) , id: mirConstId ( 40 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 404 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 406 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 9 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 407 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 408 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 409 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 26 ) , span: span ( 410 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 27 ) , span: span ( 411 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 412 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 404 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 407 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 412 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 411 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account10set_amount17hce8ba8bc500c09edE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::set_amount" ) , id: defId ( 57 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1134 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 221 ) , id: mirConstId ( 131 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1135 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 2 ) , ty ( 19 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1137 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1136 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1138 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 1139 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1140 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1135 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1139 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "amount" ) , sourceInfo: sourceInfo ( ... span: span ( 1140 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1141 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account14clear_delegate17h196f20e58aef9cf0E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::clear_delegate" ) , id: defId ( 59 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1150 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 64 ) ) ) ) ) ) , span: span ( 1149 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1149 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 1149 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 222 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 223 ) ) projectionElemIndex ( local ( 2 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1152 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 107 ) ) ) ) ) ) , span: span ( 1153 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1151 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1154 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 1155 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1150 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1149 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1149 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1155 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1156 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account16delegated_amount17h506a119c984a3a62E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::delegated_amount" ) , id: defId ( 63 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 7 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 1186 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1184 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 147 ) , id: mirConstId ( 62 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1185 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1187 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1188 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1189 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1186 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1189 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1190 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account20set_delegated_amount17h36e06989aae58676E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::set_delegated_amount" ) , id: defId ( 62 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1176 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 221 ) , id: mirConstId ( 131 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1177 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 7 ) , ty ( 19 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1179 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1178 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1180 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 1181 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1182 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1177 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1181 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "amount" ) , sourceInfo: sourceInfo ( ... span: span ( 1182 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1183 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account6amount17hb22d34edbefa9debE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::amount" ) , id: defId ( 58 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 2 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 1144 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1142 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 147 ) , id: mirConstId ( 62 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1143 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1145 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1146 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1147 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1144 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1147 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1148 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account8delegate17hf8d55e6d3624aa60E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::delegate" ) , id: defId ( 60 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1158 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1158 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 64 ) ) ) ) ) ) , span: span ( 1157 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1157 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 1157 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 222 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 223 ) ) projectionElemIndex ( local ( 3 ) ) .ProjectionElems ) ) ) ) , span: span ( 1157 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 1159 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 222 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 1161 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1162 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1160 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1163 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1160 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1164 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 114 ) , span: span ( 1165 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1166 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1157 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1158 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1157 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1157 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1161 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1166 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1167 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account9is_frozen17h0aac5dab00a6758aE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::is_frozen" ) , id: defId ( 64 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 4 ) , ty ( 97 ) ) .ProjectionElems ) ) ) , span: span ( 1192 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1193 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 7 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 58 ) , id: mirConstId ( 132 ) ) ) ) ) ) , span: span ( 1193 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1191 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 57 ) , id: mirConstId ( 14 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1191 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1194 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1195 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1196 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 58 ) , span: span ( 1192 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 58 ) , span: span ( 1193 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1196 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1197 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state7account7Account9is_native17hafd04a6654ce7707E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::is_native" ) , id: defId ( 61 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1169 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1169 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 64 ) ) ) ) ) ) , span: span ( 1168 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1168 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 1168 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 5 ) , ty ( 223 ) ) projectionElemIndex ( local ( 3 ) ) .ProjectionElems ) ) ) ) , span: span ( 1168 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1171 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) ) , span: span ( 1172 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1170 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1173 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1174 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1168 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1169 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1168 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1168 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1174 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1175 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state8load_mut17h058ce9ca416b22c3E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_mut::" ) , id: defId ( 67 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1220 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 181 ) , id: mirConstId ( 94 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1221 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1222 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 234 ) , id: mirConstId ( 145 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 32 ) , id: mirConstId ( 146 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1223 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1224 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 31 ) , span: span ( 1225 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 1226 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 31 ) , span: span ( 1221 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1226 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1227 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program19spl_token_interface5state8load_mut28_$u7b$$u7b$closure$u7d$$u7d$17h1a7ba9581bcfbd2fE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_mut::::{closure#0}" ) , id: defId ( 28 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 415 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 413 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 100 ) , id: mirConstId ( 40 ) ) ) ) , args: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 414 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 414 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 417 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 416 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 9 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 418 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 419 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 416 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 420 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 31 ) , span: span ( 421 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 32 ) , span: span ( 422 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 423 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 414 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 415 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 418 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 423 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 422 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9pinocchio10entrypoint11deserialize17h90e24b1c5a7dae61E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "pinocchio::entrypoint::deserialize::<'_, 128>" ) , id: defId ( 55 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1003 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1003 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1004 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1001 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1002 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 207 ) ) ) , span: span ( 1006 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 140 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 141 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 140 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 142 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 50 ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 143 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 142 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1005 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 144 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 143 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 145 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 144 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1005 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1005 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 145 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 142 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 64 ) , unwind: unwindActionUnreachable ) , span: span ( 1005 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1007 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 10 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 3 ) , unwind: unwindActionContinue ) , span: span ( 1007 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 10 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1007 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGt , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1009 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1008 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 48 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 1008 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1010 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 208 ) , id: mirConstId ( 118 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1011 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x80\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 119 ) ) ) ) .Operands , destination: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 5 ) ) , unwind: unwindActionContinue ) , span: span ( 1012 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 50 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 1014 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1015 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1013 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 209 ) , id: mirConstId ( 120 ) ) ) ) , args: operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 6 ) ) , unwind: unwindActionContinue ) , span: span ( 1013 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1013 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1016 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) , span: span ( 1013 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1013 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 210 ) , id: mirConstId ( 121 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 1013 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) ) , span: span ( 1013 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 11 ) ) branch ( 1 , basicBlockIdx ( 10 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 1013 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 17 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1019 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1020 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1017 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 12 ) ) , unwind: unwindActionContinue ) , span: span ( 1018 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 57 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 50 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1022 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1021 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 209 ) , id: mirConstId ( 120 ) ) ) ) , args: operandMove ( place ( ... local: local ( 57 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 56 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 30 ) ) , unwind: unwindActionContinue ) , span: span ( 1021 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , ty ( 205 ) ) ) , span: span ( 1024 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 134 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 135 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 134 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 136 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 137 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 136 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1023 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 138 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 135 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 137 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 139 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 138 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1023 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1023 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 139 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 136 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 135 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 63 ) , unwind: unwindActionUnreachable ) , span: span ( 1023 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 128 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 129 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 128 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 130 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 131 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 130 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1025 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 132 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 129 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 131 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 133 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 132 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1025 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1025 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 133 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 130 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 129 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 62 ) , unwind: unwindActionUnreachable ) , span: span ( 1025 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1026 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 27 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 15 ) , unwind: unwindActionContinue ) , span: span ( 1026 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 27 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1026 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 122 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 123 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 122 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 124 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 125 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 124 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1027 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 126 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 123 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 125 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 127 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 126 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1027 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1027 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 127 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 124 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 123 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 61 ) , unwind: unwindActionUnreachable ) , span: span ( 1027 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 30 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1030 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 31 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1028 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x28\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 122 ) ) ) ) ) ) , span: span ( 1029 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 31 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1028 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x28\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 122 ) ) ) ) ) , target: basicBlockIdx ( 17 ) , unwind: unwindActionContinue ) , span: span ( 1029 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 31 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1029 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 34 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1034 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 33 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerWithExposedProvenance , operandMove ( place ( ... local: local ( 34 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 1035 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1031 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 211 ) , id: mirConstId ( 123 ) ) ) ) , args: operandMove ( place ( ... local: local ( 33 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1032 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) .Operands , destination: place ( ... local: local ( 32 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 18 ) ) , unwind: unwindActionContinue ) , span: span ( 1033 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 35 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1036 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 35 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 19 ) , unwind: unwindActionContinue ) , span: span ( 1036 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 35 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1036 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1037 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 36 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 20 ) ) , unwind: unwindActionContinue ) , span: span ( 1038 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 37 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1039 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 37 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 21 ) , unwind: unwindActionContinue ) , span: span ( 1039 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 37 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1039 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 40 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1040 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 41 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 40 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1040 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 41 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 40 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 22 ) , unwind: unwindActionContinue ) , span: span ( 1040 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 39 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindTwoPhaseBorrow ) , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemIndex ( local ( 20 ) ) .ProjectionElems ) ) ) , span: span ( 1040 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 42 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 56 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1043 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1041 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 213 ) , id: mirConstId ( 125 ) ) ) ) , args: operandMove ( place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 42 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 38 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 7 ) ) , unwind: unwindActionContinue ) , span: span ( 1042 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1044 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 43 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 24 ) ) , unwind: unwindActionContinue ) , span: span ( 1045 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 44 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1046 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 44 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 25 ) , unwind: unwindActionContinue ) , span: span ( 1046 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 44 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1046 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 47 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1047 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 48 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 47 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1047 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 48 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 47 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 26 ) , unwind: unwindActionContinue ) , span: span ( 1047 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 46 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindTwoPhaseBorrow ) , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemIndex ( local ( 20 ) ) .ProjectionElems ) ) ) , span: span ( 1047 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 116 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 117 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 116 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 118 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 119 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1048 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 120 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 117 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 119 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 121 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 120 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1048 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1048 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 121 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 117 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 60 ) , unwind: unwindActionUnreachable ) , span: span ( 1048 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 51 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemIndex ( local ( 52 ) ) .ProjectionElems ) ) ) , span: span ( 1051 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1049 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 214 ) , id: mirConstId ( 126 ) ) ) ) , args: operandMove ( place ( ... local: local ( 51 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 50 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 28 ) ) , unwind: unwindActionContinue ) , span: span ( 1050 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1052 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 215 ) , id: mirConstId ( 127 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 50 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 49 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 29 ) ) , unwind: unwindActionContinue ) , span: span ( 1053 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1054 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 213 ) , id: mirConstId ( 125 ) ) ) ) , args: operandMove ( place ( ... local: local ( 46 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 49 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 45 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 7 ) ) , unwind: unwindActionContinue ) , span: span ( 1055 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 58 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 56 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1021 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 31 ) ) , span: span ( 1056 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 60 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) ) , span: span ( 1021 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1021 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 210 ) , id: mirConstId ( 121 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 60 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 59 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 32 ) ) , unwind: unwindActionContinue ) , span: span ( 1021 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 61 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 59 ) , projection: .ProjectionElems ) ) ) , span: span ( 1021 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 61 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 34 ) ) branch ( 1 , basicBlockIdx ( 33 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 1021 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 64 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1059 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1057 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 64 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 63 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 35 ) ) , unwind: unwindActionContinue ) , span: span ( 1058 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1061 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 49 ) ) , span: span ( 1060 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 62 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 63 ) , projection: .ProjectionElems ) ) , ty ( 205 ) ) ) , span: span ( 1063 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 110 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 111 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 110 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 112 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 113 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 112 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1062 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 114 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 111 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 113 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 115 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 114 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1062 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1062 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 115 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 112 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 111 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 59 ) , unwind: unwindActionUnreachable ) , span: span ( 1062 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1064 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 216 ) , id: mirConstId ( 128 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 67 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 37 ) ) , unwind: unwindActionContinue ) , span: span ( 1065 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 68 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 67 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1066 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 68 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 67 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 38 ) , unwind: unwindActionContinue ) , span: span ( 1066 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 68 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1066 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 104 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 105 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 104 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 106 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 107 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 106 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1067 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 108 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 105 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 107 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 109 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 108 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1067 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1067 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 109 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 106 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 105 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 58 ) , unwind: unwindActionUnreachable ) , span: span ( 1067 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 71 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1070 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 72 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1068 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x28\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 122 ) ) ) ) ) ) , span: span ( 1069 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 72 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1068 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x28\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 122 ) ) ) ) ) , target: basicBlockIdx ( 40 ) , unwind: unwindActionContinue ) , span: span ( 1069 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 72 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1069 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 75 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1074 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 74 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerWithExposedProvenance , operandMove ( place ( ... local: local ( 75 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 1075 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1071 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 211 ) , id: mirConstId ( 123 ) ) ) ) , args: operandMove ( place ( ... local: local ( 74 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1072 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) .Operands , destination: place ( ... local: local ( 73 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 41 ) ) , unwind: unwindActionContinue ) , span: span ( 1073 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 76 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 73 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1076 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 76 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 73 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 42 ) , unwind: unwindActionContinue ) , span: span ( 1076 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 76 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1076 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1077 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 77 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 43 ) ) , unwind: unwindActionContinue ) , span: span ( 1078 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 78 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 77 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1079 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 78 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 77 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 44 ) , unwind: unwindActionContinue ) , span: span ( 1079 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 78 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1079 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 31 ) ) , span: span ( 1080 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1081 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 79 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 46 ) ) , unwind: unwindActionContinue ) , span: span ( 1082 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 80 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1083 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 80 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 47 ) , unwind: unwindActionContinue ) , span: span ( 1083 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 80 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1083 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 31 ) ) , span: span ( 1080 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1084 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1084 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 49 ) ) , span: span ( 1060 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 85 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1087 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1085 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 85 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 84 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 50 ) ) , unwind: unwindActionContinue ) , span: span ( 1086 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 83 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 84 ) , projection: .ProjectionElems ) ) , ty ( 207 ) ) ) , span: span ( 1089 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 98 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 83 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 99 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 98 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 100 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 50 ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 101 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 100 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1088 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 102 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 99 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 101 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 103 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 102 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1088 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1088 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 103 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 100 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 99 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 57 ) , unwind: unwindActionUnreachable ) , span: span ( 1088 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 87 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 86 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1090 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 87 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 86 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 52 ) , unwind: unwindActionContinue ) , span: span ( 1090 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 87 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1090 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 91 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1093 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1091 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 91 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 90 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 53 ) ) , unwind: unwindActionContinue ) , span: span ( 1092 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 89 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 90 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 1092 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1094 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 217 ) , id: mirConstId ( 129 ) ) ) ) , args: operandMove ( place ( ... local: local ( 89 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 88 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 54 ) ) , unwind: unwindActionContinue ) , span: span ( 1095 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 92 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1096 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 92 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 55 ) , unwind: unwindActionContinue ) , span: span ( 1096 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 92 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1096 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 96 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1099 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1097 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 96 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 95 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 56 ) ) , unwind: unwindActionContinue ) , span: span ( 1098 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 94 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 95 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 1101 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 93 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 94 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1102 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 97 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1103 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 93 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 97 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 88 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1104 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1100 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 82 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 83 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 81 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 82 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1107 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1105 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 86 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 51 ) ) , unwind: unwindActionContinue ) , span: span ( 1106 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 70 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 62 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 8 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 69 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 70 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1108 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 71 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 69 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1070 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 71 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 69 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 39 ) , unwind: unwindActionContinue ) , span: span ( 1070 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 66 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 62 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 65 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 66 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1110 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 130 ) ) ) ) ) ) , span: span ( 1109 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 65 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 45 ) ) .Branches , otherwise: basicBlockIdx ( 36 ) ) ) , span: span ( 1109 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 53 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 52 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 53 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1111 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 54 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1051 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 55 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1051 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 55 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 27 ) , unwind: unwindActionContinue ) , span: span ( 1051 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 29 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 8 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 29 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1112 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 30 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1030 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 30 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 16 ) , unwind: unwindActionContinue ) , span: span ( 1030 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1115 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 107 ) ) ) ) ) ) , span: span ( 1025 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1113 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 216 ) , id: mirConstId ( 128 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 14 ) ) , unwind: unwindActionContinue ) , span: span ( 1114 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1117 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 130 ) ) ) ) ) ) , span: span ( 1116 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 23 ) ) .Branches , otherwise: basicBlockIdx ( 13 ) ) ) , span: span ( 1116 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1120 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1118 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1119 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 218 ) , span: span ( 1121 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1122 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 219 ) , span: span ( 1123 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1124 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1125 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 207 ) , span: span ( 1006 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1002 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1004 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1119 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1007 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1126 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1008 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1127 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1013 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1015 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1013 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 73 ) , span: span ( 1013 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 220 ) , span: span ( 1013 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 1016 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1019 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1024 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1018 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1020 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1116 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1114 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1026 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1112 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1030 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1029 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1033 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1035 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1034 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1036 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1038 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1039 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 126 ) , span: span ( 1042 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 127 ) , span: span ( 1040 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1040 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1040 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 124 ) , span: span ( 1043 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1045 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1046 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 126 ) , span: span ( 1055 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 127 ) , span: span ( 1047 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1047 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1047 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 124 ) , span: span ( 1053 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1050 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 122 ) , span: span ( 1051 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1111 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1051 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1051 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1021 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1022 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1021 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 73 ) , span: span ( 1021 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 220 ) , span: span ( 1021 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 1056 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1063 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1058 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1059 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1109 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1065 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1066 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1108 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1070 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1069 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1073 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1075 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1074 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1076 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1078 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1079 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1082 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1083 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1128 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 207 ) , span: span ( 1089 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1086 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1087 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1106 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1090 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1129 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1092 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1092 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1093 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1096 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1102 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1101 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1098 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1099 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1103 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1005 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "input" ) , sourceInfo: sourceInfo ( ... span: span ( 1122 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 1123 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "offset" ) , sourceInfo: sourceInfo ( ... span: span ( 1124 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "total_accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 1125 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "processed" ) , sourceInfo: sourceInfo ( ... span: span ( 1126 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "processed" ) , sourceInfo: sourceInfo ( ... span: span ( 1127 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 1013 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "i" ) , sourceInfo: sourceInfo ( ... span: span ( 1019 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 1130 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 1021 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 1131 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "instruction_data_len" ) , sourceInfo: sourceInfo ( ... span: span ( 1128 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 1129 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 88 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "program_id" ) , sourceInfo: sourceInfo ( ... span: span ( 1132 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 93 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1133 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo21borrow_data_unchecked17hde9cb5e2a5af59a8E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::borrow_data_unchecked" ) , id: defId ( 98 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1640 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 284 ) , id: mirConstId ( 200 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1641 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 1641 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1642 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 188 ) , id: mirConstId ( 101 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1643 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1644 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 217 ) , id: mirConstId ( 129 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1645 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1646 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 81 ) , span: span ( 1647 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1648 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1641 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1641 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1643 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1648 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1649 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo25borrow_mut_data_unchecked17h33c2d00c470b2d5fE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::borrow_mut_data_unchecked" ) , id: defId ( 99 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1650 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 284 ) , id: mirConstId ( 200 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1651 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1652 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 188 ) , id: mirConstId ( 101 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1653 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1654 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 285 ) , id: mirConstId ( 201 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1655 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1656 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 133 ) , span: span ( 1657 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1658 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1651 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1653 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1658 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1659 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo29borrow_mut_lamports_unchecked17h8cf4581da74fcdadE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::borrow_mut_lamports_unchecked" ) , id: defId ( 97 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 1636 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 7 ) , ty ( 50 ) ) .ProjectionElems ) ) ) , span: span ( 1636 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1635 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 186 ) , span: span ( 1637 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1638 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1638 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1638 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1639 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo3key17hcf5620b5561c83c1E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::key" ) , id: defId ( 51 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 979 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 5 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 979 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 978 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 104 ) , span: span ( 980 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 981 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 981 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 981 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 982 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo5owner17h31d51cbf512d5e6dE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::owner" ) , id: defId ( 52 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 984 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 6 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 984 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 983 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 104 ) , span: span ( 985 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 986 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 986 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 986 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 987 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo8data_len17hccfa1e6c1c534d65E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::data_len" ) , id: defId ( 54 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 995 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 995 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 995 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionUnreachable ) , span: span ( 995 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 8 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 997 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 996 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 998 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 999 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 999 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 995 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 999 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1000 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo8data_ptr17h5341cd226b8ba10fE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::data_ptr" ) , id: defId ( 100 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) ) , span: span ( 1662 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 286 ) ) ) , span: span ( 1663 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 132 ) ) ) , span: span ( 1664 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1660 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 216 ) , id: mirConstId ( 128 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1661 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1665 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1666 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1667 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 132 ) , span: span ( 1668 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1669 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1664 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 286 ) , span: span ( 1663 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1662 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1661 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1669 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1670 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9pinocchio12account_info11AccountInfo9is_signer17hd42ccfe1b598615aE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::is_signer" ) , id: defId ( 53 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 988 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 988 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 988 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionUnreachable ) , span: span ( 988 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 990 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 107 ) ) ) ) ) ) , span: span ( 991 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 989 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 992 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 993 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 993 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 988 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 993 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 994 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9pinocchio13program_error124_$LT$impl$u20$core..convert..From$LT$pinocchio_token_program..pinocchio..program_error..ProgramError$GT$$u20$for$u20$u64$GT$4from17hd0718b4c2b5d73bfE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "pinocchio::program_error:: for u64>::from" ) , id: defId ( 88 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 1537 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) branch ( 1 , basicBlockIdx ( 27 ) ) branch ( 2 , basicBlockIdx ( 26 ) ) branch ( 3 , basicBlockIdx ( 25 ) ) branch ( 4 , basicBlockIdx ( 24 ) ) branch ( 5 , basicBlockIdx ( 23 ) ) branch ( 6 , basicBlockIdx ( 22 ) ) branch ( 7 , basicBlockIdx ( 21 ) ) branch ( 8 , basicBlockIdx ( 20 ) ) branch ( 9 , basicBlockIdx ( 19 ) ) branch ( 10 , basicBlockIdx ( 18 ) ) branch ( 11 , basicBlockIdx ( 17 ) ) branch ( 12 , basicBlockIdx ( 16 ) ) branch ( 13 , basicBlockIdx ( 15 ) ) branch ( 14 , basicBlockIdx ( 14 ) ) branch ( 15 , basicBlockIdx ( 13 ) ) branch ( 16 , basicBlockIdx ( 12 ) ) branch ( 17 , basicBlockIdx ( 11 ) ) branch ( 18 , basicBlockIdx ( 10 ) ) branch ( 19 , basicBlockIdx ( 9 ) ) branch ( 20 , basicBlockIdx ( 8 ) ) branch ( 21 , basicBlockIdx ( 7 ) ) branch ( 22 , basicBlockIdx ( 6 ) ) branch ( 23 , basicBlockIdx ( 5 ) ) branch ( 24 , basicBlockIdx ( 4 ) ) branch ( 25 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1536 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 1537 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 7 ) ) .ProjectionElems ) ) ) ) , span: span ( 1539 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 28 ) ) .Branches , otherwise: basicBlockIdx ( 29 ) ) ) , span: span ( 1538 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1540 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x1a\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 168 ) ) ) ) ) ) , span: span ( 1540 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1540 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1541 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x19\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 169 ) ) ) ) ) ) , span: span ( 1541 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1541 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1542 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x18\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 170 ) ) ) ) ) ) , span: span ( 1542 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1542 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1543 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x17\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 171 ) ) ) ) ) ) , span: span ( 1543 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1543 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1544 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x16\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 172 ) ) ) ) ) ) , span: span ( 1544 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1544 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1545 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x15\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 173 ) ) ) ) ) ) , span: span ( 1545 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1545 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1546 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x14\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 174 ) ) ) ) ) ) , span: span ( 1546 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1546 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1547 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x13\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 175 ) ) ) ) ) ) , span: span ( 1547 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1547 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1548 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x12\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 176 ) ) ) ) ) ) , span: span ( 1548 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1548 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1549 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x11\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 177 ) ) ) ) ) ) , span: span ( 1549 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1549 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1550 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x10\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 178 ) ) ) ) ) ) , span: span ( 1550 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1550 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1551 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x0f\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 179 ) ) ) ) ) ) , span: span ( 1551 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1551 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1552 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x0e\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 180 ) ) ) ) ) ) , span: span ( 1552 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1552 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1553 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x0d\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 181 ) ) ) ) ) ) , span: span ( 1553 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1553 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1554 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x0c\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 182 ) ) ) ) ) ) , span: span ( 1554 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1554 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1555 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x0b\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 183 ) ) ) ) ) ) , span: span ( 1555 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1555 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1556 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x0a\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 184 ) ) ) ) ) ) , span: span ( 1556 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1556 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1557 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x09\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 185 ) ) ) ) ) ) , span: span ( 1557 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1557 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1558 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x08\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 186 ) ) ) ) ) ) , span: span ( 1558 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1558 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1559 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x07\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 187 ) ) ) ) ) ) , span: span ( 1559 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1559 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1560 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x06\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 188 ) ) ) ) ) ) , span: span ( 1560 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1560 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1561 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x05\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 189 ) ) ) ) ) ) , span: span ( 1561 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1561 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1562 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x04\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 190 ) ) ) ) ) ) , span: span ( 1562 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1562 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1563 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x03\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 191 ) ) ) ) ) ) , span: span ( 1563 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1563 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1564 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x02\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 192 ) ) ) ) ) ) , span: span ( 1564 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1564 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1566 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x01\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 193 ) ) ) ) ) ) , span: span ( 1566 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1565 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 50 ) ) ) , span: span ( 1567 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1565 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1568 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1569 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1570 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 1571 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 1539 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "error" ) , sourceInfo: sourceInfo ( ... span: span ( 1570 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "error" ) , sourceInfo: sourceInfo ( ... span: span ( 1539 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1572 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9processor14validate_owner17h75cd30b8a1f9a14dE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "processor::validate_owner" ) , id: defId ( 49 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 901 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 899 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 900 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) , span: span ( 900 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 902 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 169 ) , id: mirConstId ( 82 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 902 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 902 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 4 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 905 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 903 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 904 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 906 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 907 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 188 ) , id: mirConstId ( 101 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 6 ) ) , unwind: unwindActionContinue ) , span: span ( 908 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 910 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x63\x01\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 102 ) ) ) ) ) ) , span: span ( 909 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 41 ) ) .Branches , otherwise: basicBlockIdx ( 7 ) ) ) , span: span ( 909 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 911 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 187 ) , id: mirConstId ( 99 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 912 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) , span: span ( 912 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 914 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 6 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 106 ) , id: mirConstId ( 103 ) ) ) ) ) ) , span: span ( 914 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 913 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 103 ) , id: mirConstId ( 42 ) ) ) ) , args: operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 913 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 41 ) ) .Branches , otherwise: basicBlockIdx ( 10 ) ) ) , span: span ( 913 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 915 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 163 ) , id: mirConstId ( 77 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 11 ) ) , unwind: unwindActionContinue ) , span: span ( 916 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 917 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 189 ) , id: mirConstId ( 104 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 12 ) ) , unwind: unwindActionContinue ) , span: span ( 918 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 919 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 190 ) , id: mirConstId ( 105 ) ) ) ) , args: operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 13 ) ) , unwind: unwindActionContinue ) , span: span ( 919 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) , span: span ( 919 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 15 ) ) branch ( 1 , basicBlockIdx ( 16 ) ) .Branches , otherwise: basicBlockIdx ( 14 ) ) ) , span: span ( 919 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 16 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 34 ) ) .ProjectionElems ) ) ) ) , span: span ( 922 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 923 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 107 ) ) ) ) ) ) , span: span ( 923 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueRepeat ( operandConstant ( constOperand ( ... span: span ( 924 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) , span: span ( 925 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 920 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 191 ) , id: mirConstId ( 106 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 17 ) ) , unwind: unwindActionContinue ) , span: span ( 921 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 16 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 926 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 926 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 45 ) ) , unwind: unwindActionContinue ) , span: span ( 919 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 927 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 192 ) , id: mirConstId ( 108 ) ) ) ) , args: operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 18 ) ) , unwind: unwindActionContinue ) , span: span ( 927 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 927 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 928 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) ) , span: span ( 927 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 927 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 193 ) , id: mirConstId ( 109 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 20 ) ) , unwind: unwindActionContinue ) , span: span ( 927 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 29 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) ) , span: span ( 927 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 29 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 22 ) ) branch ( 1 , basicBlockIdx ( 21 ) ) .Branches , otherwise: basicBlockIdx ( 14 ) ) ) , span: span ( 927 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 30 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 27 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 930 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 35 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 195 ) ) .ProjectionElems ) ) ) , span: span ( 931 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 38 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 932 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 37 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 38 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 933 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 36 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 50 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 934 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) operandMove ( place ( ... local: local ( 37 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 935 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 929 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 194 ) , id: mirConstId ( 110 ) ) ) ) , args: operandMove ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 34 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 23 ) ) , unwind: unwindActionContinue ) , span: span ( 929 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 58 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 937 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 59 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 938 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 57 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandMove ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 59 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 936 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 57 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 44 ) ) .Branches , otherwise: basicBlockIdx ( 40 ) ) ) , span: span ( 936 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 939 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 196 ) , id: mirConstId ( 111 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 34 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 33 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 24 ) ) , unwind: unwindActionContinue ) , span: span ( 940 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 941 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 197 ) , id: mirConstId ( 112 ) ) ) ) , args: operandMove ( place ( ... local: local ( 33 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 32 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 25 ) ) , unwind: unwindActionContinue ) , span: span ( 942 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 943 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 198 ) , id: mirConstId ( 113 ) ) ) ) , args: operandMove ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 31 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 26 ) ) , unwind: unwindActionContinue ) , span: span ( 943 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 39 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 31 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 943 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 27 ) ) , span: span ( 944 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 41 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) ) , span: span ( 943 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 943 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 199 ) , id: mirConstId ( 114 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 41 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 40 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 28 ) ) , unwind: unwindActionContinue ) , span: span ( 943 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 42 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 40 ) , projection: .ProjectionElems ) ) ) , span: span ( 943 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 42 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 19 ) ) branch ( 1 , basicBlockIdx ( 29 ) ) .Branches , otherwise: basicBlockIdx ( 14 ) ) ) , span: span ( 943 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 43 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 40 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 109 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 947 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 44 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 40 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 109 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 104 ) ) .ProjectionElems ) ) ) ) , span: span ( 948 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 46 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 44 ) , projection: .ProjectionElems ) ) ) , span: span ( 949 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 945 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 48 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 30 ) ) , unwind: unwindActionContinue ) , span: span ( 946 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 47 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 48 ) , projection: .ProjectionElems ) ) ) , span: span ( 946 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 950 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 103 ) , id: mirConstId ( 42 ) ) ) ) , args: operandMove ( place ( ... local: local ( 46 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 47 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 45 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 31 ) ) , unwind: unwindActionContinue ) , span: span ( 950 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 45 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 27 ) ) .Branches , otherwise: basicBlockIdx ( 32 ) ) ) , span: span ( 950 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 50 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 115 ) ) ) ) ) ) , span: span ( 951 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 51 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 50 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 951 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 51 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 50 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 33 ) , unwind: unwindActionContinue ) , span: span ( 951 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 49 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 23 ) , projection: projectionElemIndex ( local ( 43 ) ) .ProjectionElems ) ) ) ) , span: span ( 951 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 49 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 34 ) ) .Branches , otherwise: basicBlockIdx ( 27 ) ) ) , span: span ( 951 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 952 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 200 ) , id: mirConstId ( 116 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 52 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 35 ) ) , unwind: unwindActionContinue ) , span: span ( 953 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 37 ) ) .Branches , otherwise: basicBlockIdx ( 36 ) ) ) , span: span ( 953 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 54 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 115 ) ) ) ) ) ) , span: span ( 954 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 55 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 954 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 55 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 38 ) , unwind: unwindActionContinue ) , span: span ( 954 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 53 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 7 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 955 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 53 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 956 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: projectionElemIndex ( local ( 43 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 959 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 41 ) ) ) ) ) ) , span: span ( 960 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 56 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 957 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) ) , span: span ( 958 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 56 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 957 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) , target: basicBlockIdx ( 39 ) , unwind: unwindActionContinue ) , span: span ( 958 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 56 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 958 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 27 ) ) , span: span ( 961 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 60 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 7 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 962 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 60 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 963 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 964 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 200 ) , id: mirConstId ( 116 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 61 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 42 ) ) , unwind: unwindActionContinue ) , span: span ( 965 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 61 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 43 ) ) .Branches , otherwise: basicBlockIdx ( 44 ) ) ) , span: span ( 965 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 62 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 7 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 966 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 967 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) .Operands ) ) , span: span ( 969 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 968 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 968 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 970 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 971 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 972 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 973 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 902 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 901 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 900 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 900 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 904 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 905 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 909 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 908 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 913 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 912 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 912 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 914 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 49 ) , span: span ( 919 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 36 ) , span: span ( 918 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 916 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 926 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 926 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 34 ) , span: span ( 922 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 974 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 201 ) , span: span ( 975 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 64 ) , span: span ( 927 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 64 ) , span: span ( 921 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 64 ) , span: span ( 927 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 202 ) , span: span ( 927 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 203 ) , span: span ( 927 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 928 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 930 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 117 ) , span: span ( 943 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 117 ) , span: span ( 942 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 108 ) , span: span ( 940 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 70 ) , span: span ( 929 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 76 ) , span: span ( 931 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 935 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 933 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 932 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 117 ) , span: span ( 943 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 111 ) , span: span ( 943 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 112 ) , span: span ( 943 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 944 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 947 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 948 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 950 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 949 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 946 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 946 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 951 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 951 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 951 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 953 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 955 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 954 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 954 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 204 ) , span: span ( 958 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 936 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 937 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 938 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 962 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 965 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 966 ) , mut: mutabilityMut ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "expected_owner" ) , sourceInfo: sourceInfo ( ... span: span ( 971 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "owner_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 972 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "signers" ) , sourceInfo: sourceInfo ( ... span: span ( 973 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "multisig" ) , sourceInfo: sourceInfo ( ... span: span ( 976 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 926 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 922 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "num_signers" ) , sourceInfo: sourceInfo ( ... span: span ( 974 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "matched" ) , sourceInfo: sourceInfo ( ... span: span ( 975 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 927 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "signer" ) , sourceInfo: sourceInfo ( ... span: span ( 930 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 943 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "position" ) , sourceInfo: sourceInfo ( ... span: span ( 947 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "key" ) , sourceInfo: sourceInfo ( ... span: span ( 948 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 44 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 977 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9processor19check_account_owner17hf377a05ff26ea912E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "processor::check_account_owner" ) , id: defId ( 48 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 889 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 5 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 106 ) , id: mirConstId ( 100 ) ) ) ) ) ) , span: span ( 889 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 887 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 187 ) , id: mirConstId ( 99 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 888 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 888 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 890 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 169 ) , id: mirConstId ( 82 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 890 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 890 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 6 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 892 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 893 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 891 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) .Operands ) ) , span: span ( 894 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 891 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 895 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 896 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 897 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 890 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 889 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 888 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 888 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 892 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 897 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 898 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9processor6shared8transfer16process_transfer17h6f463e095b5a3543E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "processor::shared::transfer::process_transfer" ) , id: defId ( 46 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , span: span ( 650 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 1 ) ) branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 649 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 652 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 651 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGe , operandMove ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 651 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 64 ) ) ) ) ) ) , span: span ( 651 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 651 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 0 , minLength: 4 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 654 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 1 , minLength: 4 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 655 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 2 , minLength: 4 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 656 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 3 , minLength: 4 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 657 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemSubslice ( ... from: 4 , to: 0 , fromEnd: true ) .ProjectionElems ) ) ) , span: span ( 658 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 659 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 150 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 660 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 661 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 653 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 10 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 662 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 663 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 664 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGe , operandMove ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 664 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 65 ) ) ) ) ) ) , span: span ( 664 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 5 ) ) ) , span: span ( 664 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 0 , minLength: 3 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 665 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 1 , minLength: 3 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 666 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 2 , minLength: 3 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 667 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemSubslice ( ... from: 3 , to: 0 , fromEnd: true ) .ProjectionElems ) ) ) , span: span ( 668 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 29 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 150 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 669 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 29 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 670 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 653 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 10 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 672 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 673 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 671 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 676 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 152 ) ) .ProjectionElems ) ) ) ) , span: span ( 677 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 2 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 678 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 3 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 679 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 4 ) , ty ( 65 ) ) .ProjectionElems ) ) ) ) , span: span ( 680 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 674 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 151 ) , id: mirConstId ( 66 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 32 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 675 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 681 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 153 ) , id: mirConstId ( 67 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 31 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 682 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 683 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 154 ) , id: mirConstId ( 68 ) ) ) ) , args: operandMove ( place ( ... local: local ( 31 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 30 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 10 ) ) , unwind: unwindActionContinue ) , span: span ( 683 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 33 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) ) , span: span ( 683 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 33 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 12 ) ) branch ( 1 , basicBlockIdx ( 13 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 683 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 35 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 30 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) ) , span: span ( 685 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 37 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 686 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 38 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) ) , span: span ( 687 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 684 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 155 ) , id: mirConstId ( 69 ) ) ) ) , args: operandMove ( place ( ... local: local ( 37 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 38 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 36 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 14 ) ) , unwind: unwindActionContinue ) , span: span ( 684 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 34 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 30 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 688 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 688 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 34 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 683 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 26 ) ) .Branches , otherwise: basicBlockIdx ( 15 ) ) ) , span: span ( 689 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 41 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 692 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 690 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 156 ) , id: mirConstId ( 70 ) ) ) ) , args: operandMove ( place ( ... local: local ( 41 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 40 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 16 ) ) , unwind: unwindActionContinue ) , span: span ( 691 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 40 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 19 ) ) .Branches , otherwise: basicBlockIdx ( 17 ) ) ) , span: span ( 691 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 43 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 17 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 695 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 693 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 42 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 18 ) ) , unwind: unwindActionContinue ) , span: span ( 694 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 42 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 696 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 48 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 699 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 697 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 158 ) , id: mirConstId ( 72 ) ) ) ) , args: operandMove ( place ( ... local: local ( 48 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 47 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 20 ) ) , unwind: unwindActionContinue ) , span: span ( 698 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 700 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 159 ) , id: mirConstId ( 73 ) ) ) ) , args: operandMove ( place ( ... local: local ( 47 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 46 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 21 ) ) , unwind: unwindActionContinue ) , span: span ( 701 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 49 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 1 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 704 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 702 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 46 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 49 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 45 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 22 ) ) , unwind: unwindActionContinue ) , span: span ( 703 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 705 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 45 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 44 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 23 ) ) , unwind: unwindActionContinue ) , span: span ( 705 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 50 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 44 ) , projection: .ProjectionElems ) ) ) , span: span ( 705 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 50 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 24 ) ) branch ( 1 , basicBlockIdx ( 25 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 705 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 52 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 44 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 707 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 39 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 707 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 48 ) ) , span: span ( 706 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 51 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 44 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 708 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 708 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 51 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 705 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 709 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 163 ) , id: mirConstId ( 77 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 55 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 27 ) ) , unwind: unwindActionContinue ) , span: span ( 710 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 711 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 164 ) , id: mirConstId ( 78 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 55 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 54 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 28 ) ) , unwind: unwindActionContinue ) , span: span ( 712 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 713 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 165 ) , id: mirConstId ( 79 ) ) ) ) , args: operandMove ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 53 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 29 ) ) , unwind: unwindActionContinue ) , span: span ( 713 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 56 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 53 ) , projection: .ProjectionElems ) ) ) , span: span ( 713 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 56 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 30 ) ) branch ( 1 , basicBlockIdx ( 31 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 713 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 58 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 53 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 24 ) ) .ProjectionElems ) ) ) ) , span: span ( 716 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 60 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 717 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 714 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 156 ) , id: mirConstId ( 70 ) ) ) ) , args: operandMove ( place ( ... local: local ( 60 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 59 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 32 ) ) , unwind: unwindActionContinue ) , span: span ( 715 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 57 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 53 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 718 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 718 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 57 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 713 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 59 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 33 ) ) .Branches , otherwise: basicBlockIdx ( 35 ) ) ) , span: span ( 715 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 719 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 156 ) , id: mirConstId ( 70 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 61 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 34 ) ) , unwind: unwindActionContinue ) , span: span ( 720 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 61 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 37 ) ) .Branches , otherwise: basicBlockIdx ( 35 ) ) ) , span: span ( 720 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 63 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 17 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 723 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 721 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 63 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 62 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 36 ) ) , unwind: unwindActionContinue ) , span: span ( 722 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 724 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 68 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 727 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 725 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 158 ) , id: mirConstId ( 72 ) ) ) ) , args: operandMove ( place ( ... local: local ( 68 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 67 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 38 ) ) , unwind: unwindActionContinue ) , span: span ( 726 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 728 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 159 ) , id: mirConstId ( 73 ) ) ) ) , args: operandMove ( place ( ... local: local ( 67 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 66 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 39 ) ) , unwind: unwindActionContinue ) , span: span ( 729 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 69 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 1 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 732 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 730 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 66 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 69 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 65 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 40 ) ) , unwind: unwindActionContinue ) , span: span ( 731 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 733 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 65 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 64 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 41 ) ) , unwind: unwindActionContinue ) , span: span ( 733 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 70 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 64 ) , projection: .ProjectionElems ) ) ) , span: span ( 733 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 70 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 42 ) ) branch ( 1 , basicBlockIdx ( 43 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 733 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 72 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 64 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 735 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 74 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 736 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 75 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 58 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 737 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 734 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 166 ) , id: mirConstId ( 80 ) ) ) ) , args: operandMove ( place ( ... local: local ( 74 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 75 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 73 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 44 ) ) , unwind: unwindActionContinue ) , span: span ( 734 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 71 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 64 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 738 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 738 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 71 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 733 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 73 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 47 ) ) .Branches , otherwise: basicBlockIdx ( 45 ) ) ) , span: span ( 734 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 77 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 741 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 739 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 77 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 76 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 46 ) ) , unwind: unwindActionContinue ) , span: span ( 740 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 76 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 742 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 39 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 72 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 743 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 48 ) ) , span: span ( 706 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 78 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 745 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 78 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 49 ) ) branch ( 0 , basicBlockIdx ( 62 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 744 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 79 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 150 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 748 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 80 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 150 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 749 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 746 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 83 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 50 ) ) , unwind: unwindActionContinue ) , span: span ( 747 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 82 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 83 ) , projection: .ProjectionElems ) ) ) , span: span ( 747 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 85 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 751 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 84 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 85 ) , projection: .ProjectionElems ) ) ) , span: span ( 751 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 750 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 169 ) , id: mirConstId ( 82 ) ) ) ) , args: operandMove ( place ( ... local: local ( 82 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 84 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 81 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 51 ) ) , unwind: unwindActionContinue ) , span: span ( 750 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 54 ) ) .Branches , otherwise: basicBlockIdx ( 52 ) ) ) , span: span ( 750 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 87 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 754 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 752 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 87 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 86 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 53 ) ) , unwind: unwindActionContinue ) , span: span ( 753 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 86 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 755 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 756 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 163 ) , id: mirConstId ( 77 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 90 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 55 ) ) , unwind: unwindActionContinue ) , span: span ( 757 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 758 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 170 ) , id: mirConstId ( 83 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 90 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 89 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 56 ) ) , unwind: unwindActionContinue ) , span: span ( 759 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 760 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 171 ) , id: mirConstId ( 84 ) ) ) ) , args: operandMove ( place ( ... local: local ( 89 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 88 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 57 ) ) , unwind: unwindActionContinue ) , span: span ( 760 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 91 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 88 ) , projection: .ProjectionElems ) ) ) , span: span ( 760 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 91 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 58 ) ) branch ( 1 , basicBlockIdx ( 59 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 760 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 93 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 88 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 39 ) ) .ProjectionElems ) ) ) ) , span: span ( 762 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 95 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 93 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 2 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 763 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 94 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandCopy ( place ( ... local: local ( 80 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 95 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 761 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 94 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 62 ) ) .Branches , otherwise: basicBlockIdx ( 60 ) ) ) , span: span ( 761 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 92 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 88 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 764 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 764 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 92 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 760 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 97 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 18 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 767 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 765 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 97 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 96 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 61 ) ) , unwind: unwindActionContinue ) , span: span ( 766 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 96 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 768 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 101 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 771 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 769 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 172 ) , id: mirConstId ( 85 ) ) ) ) , args: operandMove ( place ( ... local: local ( 101 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 100 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 63 ) ) , unwind: unwindActionContinue ) , span: span ( 770 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 99 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 100 ) , projection: .ProjectionElems ) ) ) , span: span ( 770 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 772 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 104 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 64 ) ) , unwind: unwindActionContinue ) , span: span ( 773 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 103 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 104 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 775 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 102 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 103 ) , projection: .ProjectionElems ) ) ) , span: span ( 775 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 774 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 173 ) , id: mirConstId ( 86 ) ) ) ) , args: operandMove ( place ( ... local: local ( 99 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 102 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 98 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 65 ) ) , unwind: unwindActionContinue ) , span: span ( 774 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 98 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 81 ) ) .Branches , otherwise: basicBlockIdx ( 66 ) ) ) , span: span ( 774 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 776 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 107 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 67 ) ) , unwind: unwindActionContinue ) , span: span ( 777 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 778 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 174 ) , id: mirConstId ( 87 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 107 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 106 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 68 ) ) , unwind: unwindActionContinue ) , span: span ( 779 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 780 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 175 ) , id: mirConstId ( 88 ) ) ) ) , args: operandMove ( place ( ... local: local ( 106 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 105 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 69 ) ) , unwind: unwindActionContinue ) , span: span ( 780 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 108 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 105 ) , projection: .ProjectionElems ) ) ) , span: span ( 780 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 108 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 70 ) ) branch ( 1 , basicBlockIdx ( 71 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 780 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 114 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 783 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 781 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 176 ) , id: mirConstId ( 89 ) ) ) ) , args: operandMove ( place ( ... local: local ( 114 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 113 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 72 ) ) , unwind: unwindActionContinue ) , span: span ( 782 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 109 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 105 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 784 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 784 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 109 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 780 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 785 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 159 ) , id: mirConstId ( 73 ) ) ) ) , args: operandMove ( place ( ... local: local ( 113 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 112 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 73 ) ) , unwind: unwindActionContinue ) , span: span ( 786 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 115 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 1 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 789 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 787 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 112 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 115 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 111 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 74 ) ) , unwind: unwindActionContinue ) , span: span ( 788 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 790 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 111 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 110 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 75 ) ) , unwind: unwindActionContinue ) , span: span ( 790 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 116 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 110 ) , projection: .ProjectionElems ) ) ) , span: span ( 790 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 116 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 76 ) ) branch ( 1 , basicBlockIdx ( 77 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 790 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 118 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 110 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 792 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 78 ) ) .Branches , otherwise: basicBlockIdx ( 85 ) ) ) , span: span ( 791 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 117 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 110 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 793 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 793 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 117 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 790 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 794 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 177 ) , id: mirConstId ( 90 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 119 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 79 ) ) , unwind: unwindActionContinue ) , span: span ( 795 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 80 ) ) .Branches , otherwise: basicBlockIdx ( 85 ) ) ) , span: span ( 796 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 797 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 178 ) , id: mirConstId ( 91 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 120 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 85 ) ) , unwind: unwindActionContinue ) , span: span ( 798 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 123 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 801 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 799 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 174 ) , id: mirConstId ( 87 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 123 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 122 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 82 ) ) , unwind: unwindActionContinue ) , span: span ( 800 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 802 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 175 ) , id: mirConstId ( 88 ) ) ) ) , args: operandMove ( place ( ... local: local ( 122 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 121 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 83 ) ) , unwind: unwindActionContinue ) , span: span ( 802 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 124 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 121 ) , projection: .ProjectionElems ) ) ) , span: span ( 802 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 124 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 85 ) ) branch ( 1 , basicBlockIdx ( 84 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 802 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 125 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 121 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 803 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 803 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 125 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 802 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 86 ) ) .Branches , otherwise: basicBlockIdx ( 87 ) ) ) , span: span ( 804 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 87 ) ) .Branches , otherwise: basicBlockIdx ( 95 ) ) ) , span: span ( 805 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 806 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 179 ) , id: mirConstId ( 92 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 127 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 88 ) ) , unwind: unwindActionContinue ) , span: span ( 807 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 808 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 175 ) , id: mirConstId ( 88 ) ) ) ) , args: operandMove ( place ( ... local: local ( 127 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 126 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 89 ) ) , unwind: unwindActionContinue ) , span: span ( 808 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 128 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 126 ) , projection: .ProjectionElems ) ) ) , span: span ( 808 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 128 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 90 ) ) branch ( 1 , basicBlockIdx ( 91 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 808 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 809 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 179 ) , id: mirConstId ( 92 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 131 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 92 ) ) , unwind: unwindActionContinue ) , span: span ( 810 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 129 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 126 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 811 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 811 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 129 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 808 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 812 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 175 ) , id: mirConstId ( 88 ) ) ) ) , args: operandMove ( place ( ... local: local ( 131 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 130 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 93 ) ) , unwind: unwindActionContinue ) , span: span ( 812 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 132 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 130 ) , projection: .ProjectionElems ) ) ) , span: span ( 812 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 132 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 123 ) ) branch ( 1 , basicBlockIdx ( 94 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 812 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 133 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 130 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 813 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 813 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 133 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 812 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 135 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 816 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 814 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 180 ) , id: mirConstId ( 93 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 135 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 134 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 96 ) ) , unwind: unwindActionContinue ) , span: span ( 815 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 817 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 151 ) , id: mirConstId ( 66 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 138 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 97 ) ) , unwind: unwindActionContinue ) , span: span ( 818 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 819 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 181 ) , id: mirConstId ( 94 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 138 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 137 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 98 ) ) , unwind: unwindActionContinue ) , span: span ( 820 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 821 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 154 ) , id: mirConstId ( 68 ) ) ) ) , args: operandMove ( place ( ... local: local ( 137 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 136 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 99 ) ) , unwind: unwindActionContinue ) , span: span ( 821 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 139 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 136 ) , projection: .ProjectionElems ) ) ) , span: span ( 821 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 139 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 100 ) ) branch ( 1 , basicBlockIdx ( 101 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 821 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 141 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 136 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) ) , span: span ( 824 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 146 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 141 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 825 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 822 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 158 ) , id: mirConstId ( 72 ) ) ) ) , args: operandMove ( place ( ... local: local ( 146 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 145 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 102 ) ) , unwind: unwindActionContinue ) , span: span ( 823 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 140 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 136 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 826 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 826 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 140 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 821 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 827 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 182 ) , id: mirConstId ( 95 ) ) ) ) , args: operandMove ( place ( ... local: local ( 145 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 144 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 103 ) ) , unwind: unwindActionContinue ) , span: span ( 828 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 147 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 14 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 831 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 829 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 144 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 147 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 143 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 104 ) ) , unwind: unwindActionContinue ) , span: span ( 830 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 832 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 143 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 142 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 105 ) ) , unwind: unwindActionContinue ) , span: span ( 832 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 148 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 142 ) , projection: .ProjectionElems ) ) ) , span: span ( 832 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 148 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 106 ) ) branch ( 1 , basicBlockIdx ( 107 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 832 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 150 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 142 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 835 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 833 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 180 ) , id: mirConstId ( 93 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 150 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 151 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 108 ) ) , unwind: unwindActionContinue ) , span: span ( 834 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 149 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 142 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 836 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 836 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 149 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 832 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 153 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 839 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 837 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 183 ) , id: mirConstId ( 96 ) ) ) ) , args: operandMove ( place ( ... local: local ( 153 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 152 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 109 ) ) , unwind: unwindActionContinue ) , span: span ( 838 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 152 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 123 ) ) .Branches , otherwise: basicBlockIdx ( 110 ) ) ) , span: span ( 838 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 840 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 184 ) , id: mirConstId ( 97 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 154 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 111 ) ) , unwind: unwindActionContinue ) , span: span ( 841 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 158 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 154 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 844 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 842 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 159 ) , id: mirConstId ( 73 ) ) ) ) , args: operandMove ( place ( ... local: local ( 158 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 157 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 112 ) ) , unwind: unwindActionContinue ) , span: span ( 843 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 159 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 14 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 847 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 845 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 157 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 159 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 156 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 113 ) ) , unwind: unwindActionContinue ) , span: span ( 846 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 848 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 156 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 155 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 114 ) ) , unwind: unwindActionContinue ) , span: span ( 848 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 160 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 155 ) , projection: .ProjectionElems ) ) ) , span: span ( 848 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 160 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 115 ) ) branch ( 1 , basicBlockIdx ( 116 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 848 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 162 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 155 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 851 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 154 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 162 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 852 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 849 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 184 ) , id: mirConstId ( 97 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 163 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 117 ) ) , unwind: unwindActionContinue ) , span: span ( 850 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 161 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 155 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 853 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 853 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 161 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 848 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 167 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 163 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 856 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 854 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 182 ) , id: mirConstId ( 95 ) ) ) ) , args: operandMove ( place ( ... local: local ( 167 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 166 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 118 ) ) , unwind: unwindActionContinue ) , span: span ( 855 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 168 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 14 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 859 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 857 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 166 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 168 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 165 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 119 ) ) , unwind: unwindActionContinue ) , span: span ( 858 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 860 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 165 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 164 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 120 ) ) , unwind: unwindActionContinue ) , span: span ( 860 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 169 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 164 ) , projection: .ProjectionElems ) ) ) , span: span ( 860 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 169 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 121 ) ) branch ( 1 , basicBlockIdx ( 122 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 860 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 171 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 164 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 862 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 163 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 171 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 863 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 123 ) ) , span: span ( 861 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 170 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 164 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 864 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 864 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 170 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 860 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) .Operands ) ) , span: span ( 866 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 865 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 865 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 867 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 868 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 869 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 149 ) , span: span ( 870 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 676 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 152 ) , span: span ( 677 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 678 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 679 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 680 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 185 ) , span: span ( 653 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 649 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 652 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 662 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 654 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 655 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 656 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 657 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 658 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 651 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 651 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 152 ) , span: span ( 660 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 150 ) , span: span ( 659 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 672 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 665 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 666 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 667 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 668 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 664 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 664 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 152 ) , span: span ( 669 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 53 ) , span: span ( 683 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 31 ) , span: span ( 682 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 675 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 688 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 688 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 29 ) , span: span ( 685 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 871 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 61 ) , span: span ( 686 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 61 ) , span: span ( 687 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 872 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 691 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 692 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 694 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 695 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 51 ) , span: span ( 705 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 703 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 701 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 698 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 699 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 704 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 708 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 708 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 707 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 54 ) , span: span ( 713 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 26 ) , span: span ( 712 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 710 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 718 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 718 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 24 ) , span: span ( 716 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 715 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 717 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 720 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 722 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 723 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 51 ) , span: span ( 733 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 731 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 729 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 726 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 727 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 732 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 738 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 738 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 735 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 734 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 736 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 737 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 740 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 741 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 744 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 748 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 749 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 750 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 747 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 747 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 751 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 751 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 753 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 754 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 55 ) , span: span ( 760 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 41 ) , span: span ( 759 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 757 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 764 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 764 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 39 ) , span: span ( 762 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 761 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 763 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 766 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 767 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 774 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 105 ) , span: span ( 770 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 114 ) , span: span ( 770 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 24 ) , span: span ( 771 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 105 ) , span: span ( 775 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 114 ) , span: span ( 775 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 773 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 48 ) , span: span ( 780 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 779 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 777 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 784 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 784 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 51 ) , span: span ( 790 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 788 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 786 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 782 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 783 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 789 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 793 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 793 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 792 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 795 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 798 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 48 ) , span: span ( 802 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 800 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 801 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 803 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 803 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 48 ) , span: span ( 808 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 807 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 811 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 811 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 48 ) , span: span ( 812 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 810 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 813 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 813 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 815 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 816 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 53 ) , span: span ( 821 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 31 ) , span: span ( 820 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 818 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 826 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 826 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 29 ) , span: span ( 824 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 51 ) , span: span ( 832 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 830 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 828 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 823 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 825 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 831 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 836 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 836 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 835 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 834 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 838 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 839 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 186 ) , span: span ( 841 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 51 ) , span: span ( 848 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 846 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 843 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 844 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 847 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 853 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 853 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 851 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 186 ) , span: span ( 850 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 51 ) , span: span ( 860 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 858 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 855 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 856 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 859 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 864 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 864 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 862 ) , mut: mutabilityNot ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 868 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "amount" ) , sourceInfo: sourceInfo ( ... span: span ( 869 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "expected_decimals" ) , sourceInfo: sourceInfo ( ... span: span ( 870 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "source_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 676 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "expected_mint_info" ) , sourceInfo: sourceInfo ( ... span: span ( 677 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 678 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "authority_info" ) , sourceInfo: sourceInfo ( ... span: span ( 679 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining" ) , sourceInfo: sourceInfo ( ... span: span ( 680 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "decimals" ) , sourceInfo: sourceInfo ( ... span: span ( 652 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "source_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 654 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "mint_info" ) , sourceInfo: sourceInfo ( ... span: span ( 655 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 656 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "authority_info" ) , sourceInfo: sourceInfo ( ... span: span ( 657 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining" ) , sourceInfo: sourceInfo ( ... span: span ( 658 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "source_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 665 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 666 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "authority_info" ) , sourceInfo: sourceInfo ( ... span: span ( 667 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining" ) , sourceInfo: sourceInfo ( ... span: span ( 668 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "source_account" ) , sourceInfo: sourceInfo ( ... span: span ( 873 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 688 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 34 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 685 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self_transfer" ) , sourceInfo: sourceInfo ( ... span: span ( 871 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining_amount" ) , sourceInfo: sourceInfo ( ... span: span ( 872 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 708 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 51 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 707 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account" ) , sourceInfo: sourceInfo ( ... span: span ( 874 ) , scope: sourceScope ( 16 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 718 ) , scope: sourceScope ( 17 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 57 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 716 ) , scope: sourceScope ( 19 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining_amount" ) , sourceInfo: sourceInfo ( ... span: span ( 875 ) , scope: sourceScope ( 21 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 72 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 738 ) , scope: sourceScope ( 22 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 71 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 735 ) , scope: sourceScope ( 24 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 72 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "mint_info" ) , sourceInfo: sourceInfo ( ... span: span ( 748 ) , scope: sourceScope ( 26 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "decimals" ) , sourceInfo: sourceInfo ( ... span: span ( 749 ) , scope: sourceScope ( 26 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 80 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "mint" ) , sourceInfo: sourceInfo ( ... span: span ( 876 ) , scope: sourceScope ( 27 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 93 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 764 ) , scope: sourceScope ( 28 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 92 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 762 ) , scope: sourceScope ( 30 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 93 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 784 ) , scope: sourceScope ( 32 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 109 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 877 ) , scope: sourceScope ( 34 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "delegated_amount" ) , sourceInfo: sourceInfo ( ... span: span ( 878 ) , scope: sourceScope ( 36 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 793 ) , scope: sourceScope ( 37 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 117 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 792 ) , scope: sourceScope ( 39 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 803 ) , scope: sourceScope ( 41 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 125 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 879 ) , scope: sourceScope ( 43 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 811 ) , scope: sourceScope ( 45 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 129 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 880 ) , scope: sourceScope ( 47 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 813 ) , scope: sourceScope ( 49 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 133 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 881 ) , scope: sourceScope ( 51 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account" ) , sourceInfo: sourceInfo ( ... span: span ( 882 ) , scope: sourceScope ( 53 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 826 ) , scope: sourceScope ( 54 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 140 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 824 ) , scope: sourceScope ( 56 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_amount" ) , sourceInfo: sourceInfo ( ... span: span ( 883 ) , scope: sourceScope ( 58 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 150 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 836 ) , scope: sourceScope ( 59 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 149 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 835 ) , scope: sourceScope ( 61 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 150 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "source_lamports" ) , sourceInfo: sourceInfo ( ... span: span ( 884 ) , scope: sourceScope ( 63 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 154 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 853 ) , scope: sourceScope ( 64 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 161 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 851 ) , scope: sourceScope ( 66 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 162 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_lamports" ) , sourceInfo: sourceInfo ( ... span: span ( 885 ) , scope: sourceScope ( 68 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 163 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 864 ) , scope: sourceScope ( 69 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 170 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 862 ) , scope: sourceScope ( 71 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 171 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 886 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9processor8transfer16process_transfer17h279f3fafdc8a6f45E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "processor::transfer::process_transfer" ) , id: defId ( 45 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 631 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 144 ) , id: mirConstId ( 58 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 632 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 633 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 145 ) , id: mirConstId ( 59 ) ) ) ) , args: operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 9 ) , id: mirConstId ( 60 ) ) ) ) .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 634 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 635 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 146 ) , id: mirConstId ( 61 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 635 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 635 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) branch ( 1 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 635 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 635 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 638 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 636 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 147 ) , id: mirConstId ( 62 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 7 ) ) , unwind: unwindActionContinue ) , span: span ( 637 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 4 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 639 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 639 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 635 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 0 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 642 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 640 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 148 ) , id: mirConstId ( 63 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 641 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 643 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 644 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 645 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 646 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 647 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 56 ) , span: span ( 635 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 20 ) , span: span ( 634 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 21 ) , span: span ( 632 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 639 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 639 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 638 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 149 ) , span: span ( 642 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 645 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 646 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "amount" ) , sourceInfo: sourceInfo ( ... span: span ( 647 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 639 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 638 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 648 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN23pinocchio_token_program9processor8transfer16process_transfer28_$u7b$$u7b$closure$u7d$$u7d$17h36f7110a4261886cE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "processor::transfer::process_transfer::{closure#0}" ) , id: defId ( 1 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 2 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 96 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 95 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 8 ) , span: span ( 97 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 9 ) , span: span ( 98 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 10 ) , span: span ( 99 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "_error" ) , sourceInfo: sourceInfo ( ... span: span ( 99 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 10 ) , id: mirConstId ( 6 ) ) ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 98 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN49_$LT$usize$u20$as$u20$core..iter..range..Step$GT$17forward_unchecked17he0aed2eaac1f9d1fE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "::forward_unchecked" ) , id: defId ( 12 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 179 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 6 ) ) ) , span: span ( 180 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 179 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 181 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 59 ) , id: mirConstId ( 15 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 182 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 184 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpAddUnchecked , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 185 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 183 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 186 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 187 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 188 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 179 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 182 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "start" ) , sourceInfo: sourceInfo ( ... span: span ( 187 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "n" ) , sourceInfo: sourceInfo ( ... span: span ( 188 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 189 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 190 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 191 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core10intrinsics9cold_path17h5aa772ae08efa3e4E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::intrinsics::cold_path" ) , id: defId ( 20 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 303 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 304 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 305 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3cmp3Ord3min17h406d979053f4337cE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "::min" ) , id: defId ( 91 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1586 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 276 ) , id: mirConstId ( 195 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1587 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 277 ) , id: mirConstId ( 196 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1588 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1589 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 1590 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1591 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1592 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1591 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1592 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1593 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3cmp3min17hccac4c123775008dE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::cmp::min::" ) , id: defId ( 92 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1594 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 278 ) , id: mirConstId ( 197 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1595 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1596 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 1597 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1598 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1599 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "v1" ) , sourceInfo: sourceInfo ( ... span: span ( 1598 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v2" ) , sourceInfo: sourceInfo ( ... span: span ( 1599 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1600 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3cmp5impls50_$LT$impl$u20$core..cmp..Ord$u20$for$u20$usize$GT$3cmp17h50a1213ce3df5be6E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::cmp::impls::::cmp" ) , id: defId ( 70 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1273 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1273 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1274 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1274 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpCmp , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1275 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1276 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1276 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1272 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 246 ) , span: span ( 1277 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1278 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1279 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1273 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1274 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1278 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1279 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1280 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3cmp5impls57_$LT$impl$u20$core..cmp..PartialOrd$u20$for$u20$usize$GT$2lt17h523d0446a8724884E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::cmp::impls::::lt" ) , id: defId ( 105 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1707 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1707 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1708 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1708 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1709 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1710 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1710 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1706 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1711 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1712 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1713 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1707 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1708 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1712 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1713 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1714 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17hc4a9c6fb271ffcdaE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::cmp::impls::::eq" ) , id: defId ( 13 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 194 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 195 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 192 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 287 ) , id: mirConstId ( 202 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 193 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 196 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 197 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 198 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 199 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 198 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 198 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 199 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 200 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17hc97d6e8fba4554dbE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::cmp::impls::::eq" ) , id: defId ( 13 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 194 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 195 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 192 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 60 ) , id: mirConstId ( 16 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 193 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 196 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 197 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 61 ) , span: span ( 198 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 61 ) , span: span ( 199 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 198 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 198 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 199 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 200 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2ne17h38394a91703d4bd8E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::cmp::impls::::ne" ) , id: defId ( 101 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1673 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1674 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1671 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 166 ) , id: mirConstId ( 80 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1672 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1675 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1676 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 1677 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 1678 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1677 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1678 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1677 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1678 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1679 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3cmp6min_by17hc7c71774e3e994ccE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::cmp::min_by:: fn(&'a usize, &'b usize) -> core::cmp::Ordering {::cmp}>" ) , id: defId ( 93 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1602 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 41 ) ) ) ) ) ) , span: span ( 1602 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1602 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 41 ) ) ) ) ) ) , span: span ( 1602 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1602 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1602 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 1603 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 1604 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1602 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1601 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 279 ) , id: mirConstId ( 198 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionCleanup ( basicBlockIdx ( 7 ) ) ) , span: span ( 1602 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1606 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 1602 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 255 , basicBlockIdx ( 4 ) ) branch ( 0 , basicBlockIdx ( 4 ) ) branch ( 1 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 1605 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 1602 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1608 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1607 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1609 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) ) ) , span: span ( 1609 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1609 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1607 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 10 ) ) ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1610 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 12 ) , unwind: unwindActionTerminate ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindResume , span: span ( 1611 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 6 ) , unwind: unwindActionCleanup ( basicBlockIdx ( 12 ) ) ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 1 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 6 ) , unwind: unwindActionContinue ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 1 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 8 ) , unwind: unwindActionTerminate ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 1607 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 1612 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1613 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1614 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 277 ) , span: span ( 1615 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 246 ) , span: span ( 1602 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 280 ) , span: span ( 1602 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1603 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1604 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 281 ) , span: span ( 1616 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1607 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1607 ) , mut: mutabilityMut ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "v1" ) , sourceInfo: sourceInfo ( ... span: span ( 1613 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v2" ) , sourceInfo: sourceInfo ( ... span: span ( 1614 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "compare" ) , sourceInfo: sourceInfo ( ... span: span ( 1615 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1611 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3cmp9PartialEq2ne17hc5e53150790474f4E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "::ne" ) , id: defId ( 10 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 161 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 160 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 57 ) , id: mirConstId ( 14 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 161 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 163 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 164 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 162 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 165 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 58 ) , span: span ( 166 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 58 ) , span: span ( 167 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 161 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 166 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 167 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 168 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$15assume_init_ref17h49b93055e9641e33E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::mem::MaybeUninit::::assume_init_ref" ) , id: defId ( 35 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 540 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 120 ) , id: mirConstId ( 51 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 541 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 543 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 544 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 545 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 121 ) ) ) , span: span ( 546 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 544 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 3 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 547 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 548 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 542 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 62 ) , span: span ( 549 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 122 ) , span: span ( 550 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 541 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 121 ) , span: span ( 543 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 123 ) , span: span ( 551 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 550 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 552 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 553 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3mem12maybe_uninit20MaybeUninit$LT$T$GT$5write17he7a27faf8cc0250cE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::mem::MaybeUninit::::write" ) , id: defId ( 36 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 556 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 557 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 37 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 124 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 558 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 38 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 124 ) ) .GenericArgs , noUserTypeAnnotationIndex , someFieldIdx ( fieldIdx ( 1 ) ) ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 559 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 560 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 561 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 562 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 554 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 120 ) , id: mirConstId ( 51 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 555 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 564 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 565 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 566 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 125 ) ) ) , span: span ( 567 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 565 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 568 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 569 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 563 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 126 ) , span: span ( 570 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 127 ) , span: span ( 571 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 124 ) , span: span ( 572 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 128 ) , span: span ( 556 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 129 ) , span: span ( 557 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 555 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 125 ) , span: span ( 564 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 130 ) , span: span ( 573 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 571 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 572 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 574 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "value" ) , sourceInfo: sourceInfo ( ... span: span ( 575 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 576 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 577 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 578 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3mem7size_of17h190c62b2c01482a7E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::mem::size_of::" ) , id: defId ( 39 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 50 ) ) ) , span: span ( 1 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 579 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 580 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 581 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3mem7size_of17h43a46ed0d83a8a91E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::mem::size_of::" ) , id: defId ( 39 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 131 ) ) ) , span: span ( 1 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 579 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 580 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 581 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3num21_$LT$impl$u20$u64$GT$11checked_add17hc204a6f2c17f56a7E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::num::::checked_add" ) , id: defId ( 73 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1327 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1328 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1328 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) ) ) , span: span ( 1327 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 1326 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1329 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1330 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 253 ) , id: mirConstId ( 157 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1331 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1333 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1333 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 102 ) , id: mirConstId ( 158 ) ) ) ) ) ) , span: span ( 1334 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 1 ) ) , span: span ( 1332 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1333 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1333 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1335 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpAddUnchecked , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1336 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1337 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1338 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 1 ) ) , span: span ( 1332 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 102 ) , span: span ( 1339 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1340 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1341 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1327 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 254 ) , span: span ( 1328 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1335 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 1331 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1340 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1341 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1342 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1343 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3num21_$LT$impl$u20$u64$GT$11checked_sub17hdac38fbb299a96bfE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::num::::checked_sub" ) , id: defId ( 74 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1344 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1344 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1344 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 102 ) , id: mirConstId ( 159 ) ) ) ) ) ) , span: span ( 1346 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1345 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1347 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1348 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1349 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1350 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1345 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1352 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1351 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 102 ) , span: span ( 1353 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1354 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1355 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1344 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1347 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1354 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1355 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1356 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3num21_$LT$impl$u20$u64$GT$11to_le_bytes17h463964a3db41004fE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::num::::to_le_bytes" ) , id: defId ( 75 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 19 ) ) ) , span: span ( 1358 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1357 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 19 ) , span: span ( 1359 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1360 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1360 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1361 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1362 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1363 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3num21_$LT$impl$u20$u64$GT$13from_le_bytes17h8e07166cf7dd64ebE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::num::::from_le_bytes" ) , id: defId ( 76 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 50 ) ) ) , span: span ( 1365 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1364 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1366 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1367 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1367 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1368 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "x" ) , sourceInfo: sourceInfo ( ... span: span ( 1369 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 0 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1370 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_add18precondition_check17hac9716049b007ba0E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::num::::unchecked_add::precondition_check" ) , id: defId ( 77 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1372 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1373 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1374 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 50 ) ) ) , span: span ( 1374 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1375 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 50 ) ) ) , span: span ( 1375 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1373 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1376 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1376 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 1377 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) ) ) , span: span ( 1378 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1379 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1372 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1371 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1380 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 86 ) , id: mirConstId ( 26 ) ) ) ) , args: operandConstant ( constOperand ( ... span: span ( 1381 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x45\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 8 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 87 ) , id: mirConstId ( 160 ) ) ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionUnreachable ) , span: span ( 1382 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1383 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1384 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1385 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1385 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 72 ) , span: span ( 1382 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1377 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1378 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 254 ) , span: span ( 1373 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1374 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1375 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "lhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1385 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1385 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1386 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1387 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 1377 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1378 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1388 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3ops8function6FnOnce9call_once17h4fdcbae49066370aE" ) , monoItemKind: monoItemFn ( ... name: symbol ( " fn(&'a usize, &'b usize) -> core::cmp::Ordering {::cmp} as core::ops::FnOnce<(&usize, &usize)>>::call_once" ) , id: defId ( 102 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 247 ) ) .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 247 ) ) .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1680 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1680 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 246 ) , span: span ( 1680 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 277 ) , span: span ( 1680 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 280 ) , span: span ( 1680 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: .VarDebugInfos , spreadArg: someLocal ( local ( 2 ) ) , span: span ( 1680 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3ptr12align_offset17hfd0acb553f006ff2E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::ptr::align_offset::" ) , id: defId ( 0 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 0 ) ) ) , span: span ( 1 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 3 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 4 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 1 ) ) .Branches , otherwise: basicBlockIdx ( 5 ) ) ) , span: span ( 0 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 6 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 5 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 8 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 8 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 7 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 9 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 9 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 7 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpRem , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 12 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 10 ) ) ) , span: span ( 11 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 14 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 14 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 15 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandConstant ( constOperand ( ... span: span ( 16 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 15 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 17 ) ) statement ( ... kind: statementKindStorageDead ( local ( 10 ) ) , span: span ( 18 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 18 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 19 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 20 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 20 ) ) statement ( ... kind: statementKindIntrinsic ( nonDivergingIntrinsicAssume ( operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 21 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 22 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpRem , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 23 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 7 ) ) .Branches , otherwise: basicBlockIdx ( 8 ) ) ) , span: span ( 13 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 24 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 2 ) , id: mirConstId ( 3 ) ) ) ) , args: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionUnreachable ) , span: span ( 25 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 27 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 27 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 9 ) ) , span: span ( 26 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 30 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 28 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 3 ) , id: mirConstId ( 4 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 11 ) ) , unwind: unwindActionUnreachable ) , span: span ( 29 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 31 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 3 ) , id: mirConstId ( 4 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 12 ) ) , unwind: unwindActionUnreachable ) , span: span ( 32 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 33 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 33 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 14 ) ) .Branches , otherwise: basicBlockIdx ( 13 ) ) ) , span: span ( 33 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 35 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 15 ) ) , span: span ( 34 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 36 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 15 ) ) , span: span ( 34 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 38 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 39 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 39 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShlUnchecked , operandConstant ( constOperand ( ... span: span ( 40 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 41 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 42 ) ) statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 43 ) ) statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 44 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 45 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 46 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 43 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 47 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 16 ) ) .Branches , otherwise: basicBlockIdx ( 18 ) ) ) , span: span ( 37 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 50 ) ) statement ( ... kind: statementKindStorageLive ( local ( 23 ) ) , span: span ( 51 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 51 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShrUnchecked , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 52 ) ) statement ( ... kind: statementKindStorageDead ( local ( 23 ) ) , span: span ( 53 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 54 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 55 ) ) statement ( ... kind: statementKindStorageLive ( local ( 26 ) ) , span: span ( 56 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 56 ) ) statement ( ... kind: statementKindStorageLive ( local ( 27 ) ) , span: span ( 57 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 57 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShrUnchecked , operandMove ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 58 ) ) statement ( ... kind: statementKindStorageDead ( local ( 27 ) ) , span: span ( 59 ) ) statement ( ... kind: statementKindStorageDead ( local ( 26 ) ) , span: span ( 59 ) ) statement ( ... kind: statementKindStorageLive ( local ( 29 ) ) , span: span ( 60 ) ) statement ( ... kind: statementKindStorageLive ( local ( 30 ) ) , span: span ( 61 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 30 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 61 ) ) statement ( ... kind: statementKindStorageLive ( local ( 31 ) ) , span: span ( 62 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 31 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 62 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 29 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShrUnchecked , operandMove ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 31 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 60 ) ) statement ( ... kind: statementKindStorageDead ( local ( 31 ) ) , span: span ( 63 ) ) statement ( ... kind: statementKindStorageDead ( local ( 30 ) ) , span: span ( 63 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 29 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 64 ) ) statement ( ... kind: statementKindStorageDead ( local ( 29 ) ) , span: span ( 65 ) ) statement ( ... kind: statementKindStorageLive ( local ( 32 ) ) , span: span ( 66 ) ) statement ( ... kind: statementKindStorageLive ( local ( 33 ) ) , span: span ( 67 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 48 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 4 ) , id: mirConstId ( 5 ) ) ) ) , args: operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 33 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 17 ) ) , unwind: unwindActionContinue ) , span: span ( 49 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 32 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpMul , operandCopy ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 33 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 66 ) ) statement ( ... kind: statementKindStorageDead ( local ( 33 ) ) , span: span ( 68 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandMove ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 69 ) ) statement ( ... kind: statementKindStorageDead ( local ( 32 ) ) , span: span ( 70 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 71 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 50 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 73 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 73 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 71 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 72 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 72 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 74 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 75 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 76 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 77 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 78 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 79 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 80 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 81 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 82 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 14 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 15 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 83 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 20 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 84 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 30 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 85 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 86 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 33 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 87 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 39 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 43 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 44 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 88 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 51 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 89 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 90 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 56 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 57 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 91 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 60 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 61 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 62 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 67 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "p" ) , sourceInfo: sourceInfo ( ... span: span ( 75 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 76 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "stride" ) , sourceInfo: sourceInfo ( ... span: span ( 77 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "addr" ) , sourceInfo: sourceInfo ( ... span: span ( 78 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "a_minus_one" ) , sourceInfo: sourceInfo ( ... span: span ( 79 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "p_mod_a" ) , sourceInfo: sourceInfo ( ... span: span ( 80 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "a_mod_stride" ) , sourceInfo: sourceInfo ( ... span: span ( 81 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "aligned_address" ) , sourceInfo: sourceInfo ( ... span: span ( 82 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "byte_offset" ) , sourceInfo: sourceInfo ( ... span: span ( 83 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "addr_mod_stride" ) , sourceInfo: sourceInfo ( ... span: span ( 84 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "gcdpow" ) , sourceInfo: sourceInfo ( ... span: span ( 30 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "x" ) , sourceInfo: sourceInfo ( ... span: span ( 85 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "y" ) , sourceInfo: sourceInfo ( ... span: span ( 86 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "gcd" ) , sourceInfo: sourceInfo ( ... span: span ( 87 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "a2" ) , sourceInfo: sourceInfo ( ... span: span ( 88 ) , scope: sourceScope ( 13 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "a2minus1" ) , sourceInfo: sourceInfo ( ... span: span ( 89 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "s2" ) , sourceInfo: sourceInfo ( ... span: span ( 90 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "minusp2" ) , sourceInfo: sourceInfo ( ... span: span ( 91 ) , scope: sourceScope ( 16 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 19 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 94 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3ptr12align_offset7mod_inv17h59240894759df3e1E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::ptr::align_offset::mod_inv" ) , id: defId ( 34 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 494 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 495 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 496 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 493 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 497 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 497 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x0b\x0d\x07\x09\x03\x05\x0f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityNot ) ) , ty: ty ( 19 ) , id: mirConstId ( 46 ) ) ) ) ) ) , span: span ( 497 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 498 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x0f\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 47 ) ) ) ) ) ) , span: span ( 499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShr , operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 500 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 119 ) , id: mirConstId ( 48 ) ) ) ) ) ) , span: span ( 498 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 500 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) ) ) , span: span ( 493 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) , index: operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 493 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemIndex ( local ( 7 ) ) .ProjectionElems ) ) ) ) , span: span ( 493 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 502 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 503 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 504 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 504 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 505 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 506 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x10\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 49 ) ) ) ) ) ) , span: span ( 506 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 2 ) ) , span: span ( 501 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 507 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGe , operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 507 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 507 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 509 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 510 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 509 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 510 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 512 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 513 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 513 ) ) statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 514 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 515 ) ) statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 516 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 516 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpMul , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 515 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 517 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandConstant ( constOperand ( ... span: span ( 518 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x02\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 50 ) ) ) ) , operandMove ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 514 ) ) statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 519 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpMul , operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 512 ) ) statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 520 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 520 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 521 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 520 ) ) statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 522 ) ) statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 523 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 523 ) ) statement ( ... kind: statementKindStorageLive ( local ( 22 ) ) , span: span ( 524 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 524 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpMul , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 522 ) ) statement ( ... kind: statementKindStorageDead ( local ( 22 ) ) , span: span ( 525 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 525 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 20 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 526 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 20 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) ) ) , span: span ( 527 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 528 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 6 ) ) ) , span: span ( 511 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 529 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 2 ) ) , span: span ( 501 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 23 ) ) , span: span ( 531 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 531 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandMove ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 532 ) ) statement ( ... kind: statementKindStorageDead ( local ( 23 ) ) , span: span ( 533 ) ) statement ( ... kind: statementKindStorageDead ( local ( 10 ) ) , span: span ( 534 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 534 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 530 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 535 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 536 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 537 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 538 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 496 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 493 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 19 ) , span: span ( 497 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 498 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 499 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 493 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 505 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 507 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 508 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 512 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 513 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 514 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 515 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 516 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 526 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 527 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 116 ) , span: span ( 522 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 523 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 524 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 531 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "x" ) , sourceInfo: sourceInfo ( ... span: span ( 536 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "m" ) , sourceInfo: sourceInfo ( ... span: span ( 537 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "m_minus_one" ) , sourceInfo: sourceInfo ( ... span: span ( 538 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "inverse" ) , sourceInfo: sourceInfo ( ... span: span ( 496 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "mod_gate" ) , sourceInfo: sourceInfo ( ... span: span ( 505 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "new_gate" ) , sourceInfo: sourceInfo ( ... span: span ( 526 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "overflow" ) , sourceInfo: sourceInfo ( ... span: span ( 527 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 539 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3ptr7mut_ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$3add17hb4e97bbd3efce39fE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::ptr::mut_ptr::::add" ) , id: defId ( 40 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 583 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 582 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 132 ) , span: span ( 584 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 585 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 586 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 585 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 586 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 587 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core3ptr9const_ptr33_$LT$impl$u20$$BP$const$u20$T$GT$12align_offset17h3def8623743afed2E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::ptr::const_ptr::::align_offset" ) , id: defId ( 103 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 311 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 306 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 84 ) , id: mirConstId ( 25 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionUnreachable ) , span: span ( 307 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1683 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1681 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 288 ) , id: mirConstId ( 203 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1682 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1683 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1686 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 1687 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 9 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 204 ) ) ) ) , ty ( 90 ) ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 340 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 91 ) , id: mirConstId ( 30 ) ) ) ) , ty ( 92 ) ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 22 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 93 ) , id: mirConstId ( 31 ) ) ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 341 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 342 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 342 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1684 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 88 ) , id: mirConstId ( 28 ) ) ) ) , args: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 1685 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1688 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 1 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 1683 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 1689 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1690 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1691 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 72 ) , span: span ( 1685 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 95 ) , span: span ( 1686 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 311 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 90 ) , span: span ( 338 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 92 ) , span: span ( 340 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1690 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 1691 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "ret" ) , sourceInfo: sourceInfo ( ... span: span ( 1692 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 0 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 361 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 362 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "pieces" ) , sourceInfo: sourceInfo ( ... span: span ( 363 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1687 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 9 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 204 ) ) ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1693 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core4iter5range101_$LT$impl$u20$core..iter..traits..iterator..Iterator$u20$for$u20$core..ops..range..Range$LT$A$GT$$GT$4next17he6508e31ef4ed488E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::iter::range::>::next" ) , id: defId ( 106 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1715 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 290 ) , id: mirConstId ( 206 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1716 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1717 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 73 ) , span: span ( 1718 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 220 ) , span: span ( 1719 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1719 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1720 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core4iter6traits8iterator8Iterator9enumerate17hdf2c5c8c843df457E" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::iter::Iterator>::enumerate" ) , id: defId ( 82 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 83 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 108 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1421 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) .Operands ) ) , span: span ( 1422 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1420 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 117 ) , span: span ( 1423 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 108 ) , span: span ( 1424 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1424 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 1425 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1426 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17hb5e14e44b739a5c2E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::array::> for [[u8; 32]; 11]>::index" ) , id: defId ( 17 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 70 ) ) ) , span: span ( 251 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 249 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 75 ) , id: mirConstId ( 20 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 250 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 252 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 70 ) , span: span ( 253 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 76 ) , span: span ( 254 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 71 ) , span: span ( 255 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 70 ) , span: span ( 251 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 254 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "index" ) , sourceInfo: sourceInfo ( ... span: span ( 255 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 256 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5array8equality103_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$2eq17hb2e0318093479fbfE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::array::equality::::eq" ) , id: defId ( 78 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1389 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 255 ) , id: mirConstId ( 161 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1390 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1391 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1392 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1393 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1394 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1393 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1394 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1395 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5array8equality103_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$2ne17h0fb34b0d6d9a75b4E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::array::equality::::ne" ) , id: defId ( 79 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1396 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 256 ) , id: mirConstId ( 162 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1397 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1398 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1399 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1400 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1401 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1400 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1401 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1402 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5array98_$LT$impl$u20$core..convert..TryFrom$LT$$RF$$u5b$T$u5d$$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$8try_from17h9565faa93e83dbafE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::array:: for [u8; 8]>::try_from" ) , id: defId ( 18 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 258 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 259 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 257 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 261 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 261 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 262 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) ) ) , span: span ( 257 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 257 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 262 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 264 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 265 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 77 ) ) ) , span: span ( 266 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 267 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 78 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 268 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 269 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 270 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 78 ) ) .ProjectionElems ) ) ) ) , span: span ( 272 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 78 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 273 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 274 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 78 ) ) .ProjectionElems ) ) ) ) , span: span ( 276 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 11 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 276 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 277 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 263 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 262 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 79 ) , id: mirConstId ( 22 ) ) ) ) ) ) , span: span ( 279 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 270 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 80 ) , id: mirConstId ( 23 ) ) ) ) ) ) , span: span ( 280 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 274 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 10 ) , id: mirConstId ( 6 ) ) ) ) .Operands ) ) , span: span ( 281 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 278 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageDead ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 283 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 282 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 21 ) , span: span ( 284 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 285 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 80 ) , span: span ( 258 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 79 ) , span: span ( 259 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 257 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 261 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 77 ) , span: span ( 264 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 78 ) , span: span ( 286 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 82 ) , span: span ( 287 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 78 ) , span: span ( 272 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 276 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 78 ) , span: span ( 288 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 285 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 289 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 290 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 264 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "me" ) , sourceInfo: sourceInfo ( ... span: span ( 286 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 291 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 292 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "err" ) , sourceInfo: sourceInfo ( ... span: span ( 293 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 10 ) , id: mirConstId ( 6 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 272 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 288 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 276 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 294 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 10 ) , id: mirConstId ( 6 ) ) ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 295 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h8b64d81adbb574adE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::slice::::as_mut_ptr" ) , id: defId ( 41 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 589 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 590 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 132 ) ) ) , span: span ( 591 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 592 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 588 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 132 ) , span: span ( 593 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 594 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 134 ) , span: span ( 589 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 594 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 595 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$11split_first17h9388ba3496ada316E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::slice::::split_first" ) , id: defId ( 104 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1694 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGe , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1694 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1694 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 0 , minLength: 1 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 1696 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemSubslice ( ... from: 1 , to: 0 , fromEnd: true ) .ProjectionElems ) ) ) , span: span ( 1697 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1698 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1698 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 45 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1699 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1700 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1695 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 45 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1701 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1695 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1702 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 101 ) , span: span ( 1703 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1704 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1694 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1694 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 140 ) , span: span ( 1696 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1697 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 45 ) , span: span ( 1698 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1704 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "first" ) , sourceInfo: sourceInfo ( ... span: span ( 1696 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "tail" ) , sourceInfo: sourceInfo ( ... span: span ( 1697 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1705 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$4iter17h258b4e53333a8b31E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::slice::::iter" ) , id: defId ( 14 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 201 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 289 ) , id: mirConstId ( 205 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 202 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 203 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 108 ) , span: span ( 204 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 70 ) , span: span ( 205 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 205 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 206 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$4iter17hce5c7b3eb18f6a21E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::slice::::iter" ) , id: defId ( 14 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 201 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 63 ) , id: mirConstId ( 17 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 202 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 203 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 64 ) , span: span ( 204 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 205 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 205 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 206 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$6as_ptr17h0774186319deab30E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::slice::::as_ptr" ) , id: defId ( 42 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 287 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 265 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 597 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 598 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 596 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 5 ) , span: span ( 599 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 291 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 82 ) , span: span ( 287 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 291 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 600 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$6as_ptr17hdef1b7ee4a549402E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::slice::]>::as_ptr" ) , id: defId ( 42 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 287 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 265 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 123 ) ) ) , span: span ( 597 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 598 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 596 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 123 ) , span: span ( 599 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 135 ) , span: span ( 291 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 136 ) , span: span ( 287 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 291 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 600 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5slice3raw14from_raw_parts17h0cb086e10bbe17d2E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts::<'_, u8>" ) , id: defId ( 71 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1281 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 6 ) ) ) , span: span ( 180 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1281 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1284 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 94 ) ) ) , span: span ( 1284 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1285 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 0 ) ) ) , span: span ( 1 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1286 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 0 ) ) ) , span: span ( 1287 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1282 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 248 ) , id: mirConstId ( 155 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1283 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1289 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1289 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1289 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1288 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1291 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1292 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindRawPtr ( ty ( 249 ) , mutabilityNot ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1293 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 8 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1294 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1295 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1290 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 81 ) , span: span ( 1296 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1297 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1298 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1281 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 1283 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 94 ) , span: span ( 1284 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1285 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1286 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 82 ) , span: span ( 1292 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1297 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1298 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1299 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1300 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data_pointer" ) , sourceInfo: sourceInfo ( ... span: span ( 1301 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "metadata" ) , sourceInfo: sourceInfo ( ... span: span ( 1302 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1303 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5slice3raw14from_raw_parts17hd7f3d4abbfc2f8c5E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts::<'_, pinocchio::account_info::AccountInfo>" ) , id: defId ( 71 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1281 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 6 ) ) ) , span: span ( 180 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1281 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1284 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 94 ) ) ) , span: span ( 1284 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1285 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 124 ) ) ) , span: span ( 1 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1286 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 124 ) ) ) , span: span ( 1287 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1282 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 248 ) , id: mirConstId ( 155 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1283 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1289 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1289 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1289 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1288 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1291 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1292 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindRawPtr ( ty ( 250 ) , mutabilityNot ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1293 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 8 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1294 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1295 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1290 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 65 ) , span: span ( 1296 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1297 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1298 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1281 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 1283 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 94 ) , span: span ( 1284 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1285 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1286 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 251 ) , span: span ( 1292 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1297 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1298 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1299 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1300 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data_pointer" ) , sourceInfo: sourceInfo ( ... span: span ( 1301 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "metadata" ) , sourceInfo: sourceInfo ( ... span: span ( 1302 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1303 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5slice3raw14from_raw_parts18precondition_check17h922514f9fa21a8c6E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts::precondition_check" ) , id: defId ( 21 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 308 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 309 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 309 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 310 ) ) statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 311 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 306 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 84 ) , id: mirConstId ( 25 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 10 ) ) , unwind: unwindActionUnreachable ) , span: span ( 307 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 313 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 314 ) ) statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 314 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 315 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 316 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 312 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 11 ) ) .Branches , otherwise: basicBlockIdx ( 12 ) ) ) , span: span ( 312 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 318 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 318 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 317 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 313 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 319 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 86 ) , id: mirConstId ( 26 ) ) ) ) , args: operandConstant ( constOperand ( ... span: span ( 320 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 87 ) , id: mirConstId ( 27 ) ) ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionUnreachable ) , span: span ( 321 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 322 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 323 ) ) statement ( ... kind: statementKindStorageLive ( local ( 18 ) ) , span: span ( 324 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 325 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 326 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 327 ) ) statement ( ... kind: statementKindStorageDead ( local ( 18 ) ) , span: span ( 324 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 328 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 329 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 310 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 308 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 322 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 310 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 308 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 330 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 331 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 332 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 333 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 332 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 331 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 334 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 7 ) ) ) , span: span ( 322 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 330 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 337 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 339 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 29 ) ) ) ) , ty ( 90 ) ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 340 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 91 ) , id: mirConstId ( 30 ) ) ) ) , ty ( 92 ) ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 22 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 93 ) , id: mirConstId ( 31 ) ) ) ) operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 341 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 342 ) ) statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 342 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 335 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 88 ) , id: mirConstId ( 28 ) ) ) ) , args: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionTerminate ) , span: span ( 336 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 330 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 344 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 344 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 14 ) ) , span: span ( 343 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , expected: false , msg: assertMessageDivisionByZero ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\x7f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 32 ) ) ) ) ) , target: basicBlockIdx ( 13 ) , unwind: unwindActionTerminate ) , span: span ( 345 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpDiv , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\x7f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 32 ) ) ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 345 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 14 ) ) , span: span ( 343 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 346 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 346 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLe , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 347 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 348 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 349 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 314 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 314 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 350 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 94 ) , span: span ( 351 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 351 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 351 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 351 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 308 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 309 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 314 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 321 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 323 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 336 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 95 ) , span: span ( 337 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 331 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 352 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 332 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 311 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 90 ) , span: span ( 338 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 92 ) , span: span ( 340 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 353 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 315 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 312 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 346 ) , mut: mutabilityMut ) .LocalDecls , argCount: 4 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 351 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "size" ) , sourceInfo: sourceInfo ( ... span: span ( 351 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 351 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 351 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 4 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 354 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 355 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "is_zst" ) , sourceInfo: sourceInfo ( ... span: span ( 356 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 357 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "is_zst" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 357 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 359 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 360 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 361 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 362 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "pieces" ) , sourceInfo: sourceInfo ( ... span: span ( 363 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 339 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 29 ) ) ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 364 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 353 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 365 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 13 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "size" ) , sourceInfo: sourceInfo ( ... span: span ( 366 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 367 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "max_len" ) , sourceInfo: sourceInfo ( ... span: span ( 315 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 368 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5slice3raw18from_raw_parts_mut17h419bd653fd71b71cE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts_mut::<'_, u8>" ) , id: defId ( 72 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1304 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 6 ) ) ) , span: span ( 180 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1304 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1307 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 94 ) ) ) , span: span ( 1307 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1308 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 0 ) ) ) , span: span ( 1 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1309 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 0 ) ) ) , span: span ( 1287 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1305 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 252 ) , id: mirConstId ( 156 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1306 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1311 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1311 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1311 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1310 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1313 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1314 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindRawPtr ( ty ( 249 ) , mutabilityMut ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1315 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 8 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1316 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1317 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1312 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 133 ) , span: span ( 1318 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1319 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1320 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1304 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 1306 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 94 ) , span: span ( 1307 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1308 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1309 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 134 ) , span: span ( 1314 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1319 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1320 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1321 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1322 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data_pointer" ) , sourceInfo: sourceInfo ( ... span: span ( 1323 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "metadata" ) , sourceInfo: sourceInfo ( ... span: span ( 1324 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1325 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5slice3raw18from_raw_parts_mut18precondition_check17h3a4f666c89dfccefE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts_mut::precondition_check" ) , id: defId ( 23 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 369 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 370 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 370 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 310 ) ) statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 311 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 306 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 84 ) , id: mirConstId ( 25 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 10 ) ) , unwind: unwindActionUnreachable ) , span: span ( 307 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 371 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 372 ) ) statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 372 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 315 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 316 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 312 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 11 ) ) .Branches , otherwise: basicBlockIdx ( 12 ) ) ) , span: span ( 312 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 374 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 374 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 373 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 371 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 375 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 86 ) , id: mirConstId ( 26 ) ) ) ) , args: operandConstant ( constOperand ( ... span: span ( 376 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\xa6\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 3 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 87 ) , id: mirConstId ( 34 ) ) ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionUnreachable ) , span: span ( 377 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 322 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 323 ) ) statement ( ... kind: statementKindStorageLive ( local ( 18 ) ) , span: span ( 324 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 325 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 326 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 327 ) ) statement ( ... kind: statementKindStorageDead ( local ( 18 ) ) , span: span ( 324 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 328 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 329 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 310 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 369 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 322 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 310 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 369 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 330 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 331 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 332 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 333 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 332 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 331 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 334 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 7 ) ) ) , span: span ( 322 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 330 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 337 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 339 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 29 ) ) ) ) , ty ( 90 ) ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 340 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 91 ) , id: mirConstId ( 30 ) ) ) ) , ty ( 92 ) ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 22 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 93 ) , id: mirConstId ( 31 ) ) ) ) operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 341 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 342 ) ) statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 342 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 335 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 88 ) , id: mirConstId ( 28 ) ) ) ) , args: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionTerminate ) , span: span ( 336 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 330 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 344 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 344 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 14 ) ) , span: span ( 343 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , expected: false , msg: assertMessageDivisionByZero ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\x7f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 32 ) ) ) ) ) , target: basicBlockIdx ( 13 ) , unwind: unwindActionTerminate ) , span: span ( 345 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpDiv , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\x7f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 32 ) ) ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 345 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 14 ) ) , span: span ( 343 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 346 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 346 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLe , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 347 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 348 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 349 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 372 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 372 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 378 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 94 ) , span: span ( 379 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 379 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 379 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 379 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 369 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 370 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 372 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 377 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 323 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 336 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 95 ) , span: span ( 337 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 331 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 352 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 332 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 311 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 90 ) , span: span ( 338 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 92 ) , span: span ( 340 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 353 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 315 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 312 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 346 ) , mut: mutabilityMut ) .LocalDecls , argCount: 4 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 379 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "size" ) , sourceInfo: sourceInfo ( ... span: span ( 379 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 379 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 379 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 4 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 354 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 355 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "is_zst" ) , sourceInfo: sourceInfo ( ... span: span ( 356 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 380 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "is_zst" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 380 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 359 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 360 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 361 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 362 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "pieces" ) , sourceInfo: sourceInfo ( ... span: span ( 363 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 339 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 29 ) ) ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 364 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 353 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 365 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 13 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "size" ) , sourceInfo: sourceInfo ( ... span: span ( 366 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 367 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "max_len" ) , sourceInfo: sourceInfo ( ... span: span ( 315 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 381 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5slice4iter13Iter$LT$T$GT$3new17h68ed085bbafa251dE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::slice::Iter::<'_, [u8; 32]>::new" ) , id: defId ( 84 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1428 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1429 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1430 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 68 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1431 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 1432 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 167 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1433 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1434 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1435 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1427 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1427 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 1437 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1438 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1439 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , ty ( 258 ) ) ) , span: span ( 1440 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 583 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1441 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 1438 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1442 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1444 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1444 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 86 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) genericArgKindType ( ty ( 167 ) ) .GenericArgs , someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 3 ) ) , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 259 ) , id: mirConstId ( 164 ) ) ) ) .Operands ) ) , span: span ( 1445 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1446 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1447 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1443 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 108 ) , span: span ( 1448 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 70 ) , span: span ( 1449 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1450 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1451 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 261 ) , span: span ( 1429 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1435 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 258 ) , span: span ( 1438 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 258 ) , span: span ( 1439 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1444 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 74 ) , span: span ( 1452 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1432 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 1449 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1450 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 1451 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "end_or_len" ) , sourceInfo: sourceInfo ( ... span: span ( 1435 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 1453 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 1454 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1455 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "addr" ) , sourceInfo: sourceInfo ( ... span: span ( 1457 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 585 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 586 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1458 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5slice4iter13Iter$LT$T$GT$3new17hd3005d5f3d8a8785E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::slice::Iter::<'_, pinocchio::account_info::AccountInfo>::new" ) , id: defId ( 84 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1428 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1429 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1430 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 250 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1431 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , ty ( 121 ) ) ) , span: span ( 1432 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 124 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1433 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1434 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1435 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1427 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1427 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 121 ) ) ) , span: span ( 1437 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1438 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1439 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , ty ( 125 ) ) ) , span: span ( 1440 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 583 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1441 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 121 ) ) ) , span: span ( 1438 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1442 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1444 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1444 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 86 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) genericArgKindType ( ty ( 124 ) ) .GenericArgs , someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 3 ) ) , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 262 ) , id: mirConstId ( 165 ) ) ) ) .Operands ) ) , span: span ( 1445 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1446 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1447 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1443 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 64 ) , span: span ( 1448 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 1449 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1450 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1451 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 264 ) , span: span ( 1429 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1435 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 125 ) , span: span ( 1438 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 125 ) , span: span ( 1439 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1444 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 251 ) , span: span ( 1452 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1432 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 1449 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1450 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 1451 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "end_or_len" ) , sourceInfo: sourceInfo ( ... span: span ( 1435 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 1453 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 1454 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1455 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "addr" ) , sourceInfo: sourceInfo ( ... span: span ( 1457 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 585 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 586 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1458 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hb201fdb21468574fE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::slice::index::> for [[u8; 32]]>::index" ) , id: defId ( 19 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 296 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 83 ) , id: mirConstId ( 24 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 297 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 298 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 70 ) , span: span ( 299 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 70 ) , span: span ( 300 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 71 ) , span: span ( 301 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 300 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "index" ) , sourceInfo: sourceInfo ( ... span: span ( 301 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 302 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core6option15Option$LT$T$GT$5ok_or17hf4ba5e3f3c18467cE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::option::Option::<(&u8, &[u8])>::ok_or::" ) , id: defId ( 29 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 425 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) branch ( 1 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 424 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 425 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 427 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 427 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 45 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 280 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 426 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 426 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 45 ) ) .ProjectionElems ) ) ) ) , span: span ( 272 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 45 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 273 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 4 ) , unwind: unwindActionContinue ) , span: span ( 428 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 429 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 47 ) , span: span ( 430 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 101 ) , span: span ( 292 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 293 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 431 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 45 ) , span: span ( 272 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 427 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 292 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "err" ) , sourceInfo: sourceInfo ( ... span: span ( 293 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 272 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 432 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core6option15Option$LT$T$GT$5ok_or17hf5822471a1dc861dE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::option::Option::::ok_or::" ) , id: defId ( 29 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 425 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) branch ( 1 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 424 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 425 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 427 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 427 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 50 ) ) genericArgKindType ( ty ( 12 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 280 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 426 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 426 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 272 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 50 ) ) genericArgKindType ( ty ( 12 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 273 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 4 ) , unwind: unwindActionContinue ) , span: span ( 428 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 429 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 52 ) , span: span ( 430 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 292 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 12 ) , span: span ( 293 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 431 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 272 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 12 ) , span: span ( 427 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 292 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "err" ) , sourceInfo: sourceInfo ( ... span: span ( 293 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 272 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 432 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core6result19Result$LT$T$C$E$GT$7map_err17hf31582bd2f867d48E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::result::Result::<[u8; 8], core::array::TryFromSliceError>::map_err::" ) , id: defId ( 5 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 110 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 109 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 110 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 10 ) ) .ProjectionElems ) ) ) ) , span: span ( 113 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 112 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 111 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 111 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 112 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 112 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 111 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 18 ) , id: mirConstId ( 9 ) ) ) ) , args: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 112 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 115 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 116 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 114 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 118 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 118 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 119 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 117 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 117 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 120 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 20 ) , span: span ( 121 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 21 ) , span: span ( 122 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 9 ) , span: span ( 123 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 124 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 19 ) , span: span ( 115 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 10 ) , span: span ( 113 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 112 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 9 ) , span: span ( 111 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 23 ) , span: span ( 112 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 122 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 123 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 115 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 113 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 125 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h3ace95523305ebc9E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::result::Result::<&spl_token_interface::state::account::Account, pinocchio::program_error::ProgramError>::and_then::<&spl_token_interface::state::account::Account, {closure@p-token/src/spl_token_interface/mod.rs:1481:23: 1481:30}>" ) , id: defId ( 6 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 127 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 126 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 127 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 129 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 130 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 128 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 24 ) ) .ProjectionElems ) ) ) ) , span: span ( 133 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 132 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 132 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 131 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 10 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 132 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 134 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 134 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 134 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 135 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 26 ) , span: span ( 136 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 26 ) , span: span ( 137 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 27 ) , span: span ( 138 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 139 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 133 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 27 ) , span: span ( 131 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 28 ) , span: span ( 132 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 129 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 137 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 138 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 133 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 129 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 140 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h62dbf942495d3e86E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::result::Result::<&mut spl_token_interface::state::account::Account, pinocchio::program_error::ProgramError>::and_then::<&mut spl_token_interface::state::account::Account, {closure@p-token/src/spl_token_interface/mod.rs:1513:23: 1513:34}>" ) , id: defId ( 6 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 127 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 126 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 127 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 129 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 130 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 128 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) ) , span: span ( 133 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 132 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 132 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 131 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 30 ) , id: mirConstId ( 11 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 132 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 134 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 134 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 134 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 135 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 31 ) , span: span ( 136 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 31 ) , span: span ( 137 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 32 ) , span: span ( 138 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 139 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 133 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 32 ) , span: span ( 131 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 33 ) , span: span ( 132 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 129 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 137 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 138 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 133 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 129 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 140 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core6result19Result$LT$T$C$E$GT$8and_then17h9870b4514bdb3c4aE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::result::Result::<&spl_token_interface::state::multisig::Multisig, pinocchio::program_error::ProgramError>::and_then::<&spl_token_interface::state::multisig::Multisig, {closure@p-token/src/spl_token_interface/mod.rs:1481:23: 1481:30}>" ) , id: defId ( 6 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 127 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 126 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 127 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 129 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 130 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 128 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 34 ) ) .ProjectionElems ) ) ) ) , span: span ( 133 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 132 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 132 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 131 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 35 ) , id: mirConstId ( 12 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 132 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 134 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 134 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 134 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 135 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 36 ) , span: span ( 136 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 36 ) , span: span ( 137 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 37 ) , span: span ( 138 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 139 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 133 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 37 ) , span: span ( 131 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 38 ) , span: span ( 132 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 129 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 137 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 138 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 133 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 129 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 140 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN4core6result19Result$LT$T$C$E$GT$8and_then17hffafe4f6d15775b7E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "core::result::Result::<&spl_token_interface::state::mint::Mint, pinocchio::program_error::ProgramError>::and_then::<&spl_token_interface::state::mint::Mint, {closure@p-token/src/spl_token_interface/mod.rs:1481:23: 1481:30}>" ) , id: defId ( 6 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 127 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 126 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 127 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 129 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 130 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 128 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 39 ) ) .ProjectionElems ) ) ) ) , span: span ( 133 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 132 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 132 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 131 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 40 ) , id: mirConstId ( 13 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 132 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 134 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 134 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 134 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 135 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 41 ) , span: span ( 136 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 41 ) , span: span ( 137 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 42 ) , span: span ( 138 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 139 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 133 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 42 ) , span: span ( 131 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 43 ) , span: span ( 132 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 129 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 137 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 138 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 133 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 129 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 140 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN50_$LT$T$u20$as$u20$core..convert..From$LT$T$GT$$GT$4from17h0f450030d7b16287E" ) , monoItemKind: monoItemFn ( ... name: symbol ( ">::from" ) , id: defId ( 7 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 142 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 141 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 8 ) , span: span ( 143 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 144 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 144 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 145 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN50_$LT$T$u20$as$u20$core..convert..Into$LT$U$GT$$GT$4into17h76fa1d018188f3efE" ) , monoItemKind: monoItemFn ( ... name: symbol ( ">::into" ) , id: defId ( 90 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1580 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 282 ) , id: mirConstId ( 199 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1581 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1582 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1583 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1584 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1584 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1585 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN50_$LT$T$u20$as$u20$core..convert..Into$LT$U$GT$$GT$4into17h8083a4037d7ab233E" ) , monoItemKind: monoItemFn ( ... name: symbol ( ">::into" ) , id: defId ( 90 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1580 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 11 ) , id: mirConstId ( 7 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1581 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1582 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 8 ) , span: span ( 1583 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 1584 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1584 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1585 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN53_$LT$T$u20$as$u20$core..convert..TryInto$LT$U$GT$$GT$8try_into17hb940bd041d406b34E" ) , monoItemKind: monoItemFn ( ... name: symbol ( "<&[u8] as core::convert::TryInto<[u8; 8]>>::try_into" ) , id: defId ( 33 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 487 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 118 ) , id: mirConstId ( 45 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 488 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 489 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 21 ) , span: span ( 490 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 491 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 491 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 492 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN63_$LT$I$u20$as$u20$core..iter..traits..collect..IntoIterator$GT$9into_iter17h3f360ab6b3d5017aE" ) , monoItemKind: monoItemFn ( ... name: symbol ( "> as core::iter::IntoIterator>::into_iter" ) , id: defId ( 32 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 483 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 482 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 117 ) , span: span ( 484 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 117 ) , span: span ( 485 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 485 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 486 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN63_$LT$I$u20$as$u20$core..iter..traits..collect..IntoIterator$GT$9into_iter17h56d62c2b17108258E" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::iter::IntoIterator>::into_iter" ) , id: defId ( 32 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 483 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 482 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 64 ) , span: span ( 484 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 64 ) , span: span ( 485 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 485 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 486 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN63_$LT$I$u20$as$u20$core..iter..traits..collect..IntoIterator$GT$9into_iter17hdea3c09d7d980b4dE" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::iter::IntoIterator>::into_iter" ) , id: defId ( 32 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 483 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 482 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 71 ) , span: span ( 484 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 485 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 485 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 486 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_eq17h0b9752366ca6859eE" ) , monoItemKind: monoItemFn ( ... name: symbol ( ">::spec_eq" ) , id: defId ( 80 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1405 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 104 ) ) ) , span: span ( 1405 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 257 ) , id: mirConstId ( 163 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1407 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1406 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1408 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1409 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1410 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1405 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 1409 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1410 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1411 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_ne17h53811930bf603038E" ) , monoItemKind: monoItemFn ( ... name: symbol ( ">::spec_ne" ) , id: defId ( 81 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1412 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1405 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 104 ) ) ) , span: span ( 1405 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 257 ) , id: mirConstId ( 163 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1407 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1414 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1415 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1413 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1416 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1417 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1418 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1412 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1405 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 1417 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1418 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 1409 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1410 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1419 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN70_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17h07e018cef4f1ea96E" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::cmp::PartialEq>::eq" ) , id: defId ( 30 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 434 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 433 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 434 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 434 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) branch ( 1 , basicBlockIdx ( 7 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 433 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 434 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) branch ( 1 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 433 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 435 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 41 ) ) ) ) ) ) , span: span ( 435 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 8 ) ) , span: span ( 435 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 436 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) ) ) , span: span ( 436 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 8 ) ) , span: span ( 436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 437 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) ) ) , span: span ( 437 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 8 ) ) , span: span ( 437 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 104 ) ) .ProjectionElems ) ) ) , span: span ( 439 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 104 ) ) .ProjectionElems ) ) ) , span: span ( 440 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 438 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 103 ) , id: mirConstId ( 42 ) ) ) ) , args: operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 438 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 441 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 442 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 105 ) , span: span ( 443 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 105 ) , span: span ( 444 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 445 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 446 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 447 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 439 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 440 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 443 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 444 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "l" ) , sourceInfo: sourceInfo ( ... span: span ( 439 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 440 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 448 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17h356cc9c9272ba50eE" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 45 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 45 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 45 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 46 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 47 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 45 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17h42cf9404dc5ac3bfE" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 13 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 13 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 13 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 48 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17h48559f5c574802adE" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 34 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 34 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 34 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 49 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 36 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17h4c6e380533a37c4aE" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 12 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 12 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 15 ) ) genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 15 ) ) genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 51 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 12 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 15 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17h7f8c81d6f4255069E" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 29 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 29 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 53 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 31 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17h8e90ec5b8045e1d3E" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 24 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 24 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 24 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 54 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 26 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17hed61ee0b144e79d3E" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 39 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 39 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 39 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 55 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 41 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN79_$LT$core..result..Result$LT$T$C$E$GT$$u20$as$u20$core..ops..try_trait..Try$GT$6branch17hf59ecb4ca02351b3E" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 19 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 19 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 56 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 20 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 19 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN89_$LT$core..ops..range..Range$LT$T$GT$$u20$as$u20$core..iter..range..RangeIteratorImpl$GT$9spec_next17h3a01ca6db731d62bE" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::iter::range::RangeIteratorImpl>::spec_next" ) , id: defId ( 107 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 1721 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1722 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) , span: span ( 1722 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1723 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) ) , span: span ( 1723 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1721 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 291 ) , id: mirConstId ( 207 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1721 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 1721 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1727 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1727 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1728 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1729 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1724 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 292 ) , id: mirConstId ( 208 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1725 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1726 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1731 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1732 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1733 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 1730 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1727 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1727 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1734 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 1730 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 1736 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1735 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 73 ) , span: span ( 1737 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 220 ) , span: span ( 1738 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1721 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1722 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1723 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1739 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1729 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1738 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "old" ) , sourceInfo: sourceInfo ( ... span: span ( 1739 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1740 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN91_$LT$core..slice..iter..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17h1a010804f2f6a251E" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::iter::Iterator>::next" ) , id: defId ( 87 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 1460 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1459 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1459 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1462 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1463 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1464 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1461 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1465 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 67 ) ) .ProjectionElems ) ) ) , span: span ( 1466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 265 ) ) ) , span: span ( 1467 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1468 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1469 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1470 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1471 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) ) ) , span: span ( 1471 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 1472 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 1472 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 1474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) ) ) ) , span: span ( 1474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 11 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 1476 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1477 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 1478 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1478 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1461 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 1460 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 114 ) , id: mirConstId ( 166 ) ) ) ) ) ) , span: span ( 1480 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 1479 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 1482 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 1483 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 1484 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) ) ) ) , span: span ( 1485 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1481 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 9 ) ) .Branches , otherwise: basicBlockIdx ( 8 ) ) ) , span: span ( 1481 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 1487 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1486 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 1484 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) ) , span: span ( 1483 ) ) statement ( ... kind: statementKindStorageLive ( local ( 27 ) ) , span: span ( 1488 ) ) statement ( ... kind: statementKindStorageLive ( local ( 26 ) ) , span: span ( 1489 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 15 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) , ty ( 258 ) ) ) , span: span ( 1440 ) ) statement ( ... kind: statementKindStorageDead ( local ( 26 ) ) , span: span ( 1490 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 27 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1491 ) ) statement ( ... kind: statementKindStorageDead ( local ( 27 ) ) , span: span ( 1488 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 1492 ) ) statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 1482 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1493 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 1479 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 1495 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 67 ) ) .ProjectionElems ) ) ) , span: span ( 1495 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , ty ( 266 ) ) ) , span: span ( 1496 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 1497 ) ) statement ( ... kind: statementKindStorageLive ( local ( 18 ) ) , span: span ( 1498 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 1499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 16 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1498 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 1500 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1501 ) ) statement ( ... kind: statementKindStorageDead ( local ( 18 ) ) , span: span ( 1500 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1494 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 1502 ) ) statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 1503 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 67 ) ) .ProjectionElems ) ) ) , span: span ( 1503 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 267 ) ) ) , span: span ( 1496 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 1504 ) ) statement ( ... kind: statementKindStorageLive ( local ( 22 ) ) , span: span ( 1505 ) ) statement ( ... kind: statementKindStorageLive ( local ( 23 ) ) , span: span ( 1506 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) ) ) ) , span: span ( 1506 ) ) statement ( ... kind: statementKindStorageLive ( local ( 24 ) ) , span: span ( 1507 ) ) statement ( ... kind: statementKindStorageLive ( local ( 25 ) ) , span: span ( 1508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 23 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1507 ) ) statement ( ... kind: statementKindStorageDead ( local ( 25 ) ) , span: span ( 1509 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 167 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1510 ) ) statement ( ... kind: statementKindStorageDead ( local ( 24 ) ) , span: span ( 1511 ) ) statement ( ... kind: statementKindStorageDead ( local ( 23 ) ) , span: span ( 1512 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1513 ) ) statement ( ... kind: statementKindStorageDead ( local ( 22 ) ) , span: span ( 1512 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 1514 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1494 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 114 ) , span: span ( 1515 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 115 ) , span: span ( 1516 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1460 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1517 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1462 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1518 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 265 ) , span: span ( 1465 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 268 ) , span: span ( 1466 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 269 ) , span: span ( 1471 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 269 ) , span: span ( 1472 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1519 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1474 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 269 ) , span: span ( 1483 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1483 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 266 ) , span: span ( 1520 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 270 ) , span: span ( 1495 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1498 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1499 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 267 ) , span: span ( 1502 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 270 ) , span: span ( 1503 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1505 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1506 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1507 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1508 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 258 ) , span: span ( 1489 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1475 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1516 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1517 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "end" ) , sourceInfo: sourceInfo ( ... span: span ( 1518 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1521 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1522 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1523 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1524 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "offset" ) , sourceInfo: sourceInfo ( ... span: span ( 1525 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1526 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "old" ) , sourceInfo: sourceInfo ( ... span: span ( 1527 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1528 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "_end" ) , sourceInfo: sourceInfo ( ... span: span ( 1529 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1530 ) , scope: sourceScope ( 16 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1530 ) , scope: sourceScope ( 17 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1531 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 1532 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1526 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1533 ) , scope: sourceScope ( 19 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 20 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1534 ) , scope: sourceScope ( 21 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1535 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "_ZN91_$LT$core..slice..iter..Iter$LT$T$GT$$u20$as$u20$core..iter..traits..iterator..Iterator$GT$4next17hdf8e27f0344e0c70E" ) , monoItemKind: monoItemFn ( ... name: symbol ( " as core::iter::Iterator>::next" ) , id: defId ( 87 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 1460 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1459 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1459 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1462 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1463 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1464 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1461 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1465 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 121 ) ) .ProjectionElems ) ) ) , span: span ( 1466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 271 ) ) ) , span: span ( 1467 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1468 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1469 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1470 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1471 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) ) ) , span: span ( 1471 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 1472 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 1472 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 1474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) ) ) ) , span: span ( 1474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 11 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 1476 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1477 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 1478 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1478 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1461 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 1460 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 202 ) , id: mirConstId ( 167 ) ) ) ) ) ) , span: span ( 1480 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 1479 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 1482 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 1483 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 1484 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) ) ) ) , span: span ( 1485 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1481 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 9 ) ) .Branches , otherwise: basicBlockIdx ( 8 ) ) ) , span: span ( 1481 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 1487 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1486 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 1484 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) ) , span: span ( 1483 ) ) statement ( ... kind: statementKindStorageLive ( local ( 27 ) ) , span: span ( 1488 ) ) statement ( ... kind: statementKindStorageLive ( local ( 26 ) ) , span: span ( 1489 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 15 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) , ty ( 125 ) ) ) , span: span ( 1440 ) ) statement ( ... kind: statementKindStorageDead ( local ( 26 ) ) , span: span ( 1490 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 27 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1491 ) ) statement ( ... kind: statementKindStorageDead ( local ( 27 ) ) , span: span ( 1488 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 1492 ) ) statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 1482 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 62 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1493 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 1479 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 1495 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 121 ) ) .ProjectionElems ) ) ) , span: span ( 1495 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , ty ( 266 ) ) ) , span: span ( 1496 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 1497 ) ) statement ( ... kind: statementKindStorageLive ( local ( 18 ) ) , span: span ( 1498 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 1499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 16 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1498 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 1500 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1501 ) ) statement ( ... kind: statementKindStorageDead ( local ( 18 ) ) , span: span ( 1500 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1494 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 1502 ) ) statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 1503 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 121 ) ) .ProjectionElems ) ) ) , span: span ( 1503 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 272 ) ) ) , span: span ( 1496 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 1504 ) ) statement ( ... kind: statementKindStorageLive ( local ( 22 ) ) , span: span ( 1505 ) ) statement ( ... kind: statementKindStorageLive ( local ( 23 ) ) , span: span ( 1506 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) ) ) ) , span: span ( 1506 ) ) statement ( ... kind: statementKindStorageLive ( local ( 24 ) ) , span: span ( 1507 ) ) statement ( ... kind: statementKindStorageLive ( local ( 25 ) ) , span: span ( 1508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 23 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1507 ) ) statement ( ... kind: statementKindStorageDead ( local ( 25 ) ) , span: span ( 1509 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 124 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1510 ) ) statement ( ... kind: statementKindStorageDead ( local ( 24 ) ) , span: span ( 1511 ) ) statement ( ... kind: statementKindStorageDead ( local ( 23 ) ) , span: span ( 1512 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1513 ) ) statement ( ... kind: statementKindStorageDead ( local ( 22 ) ) , span: span ( 1512 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 1514 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1494 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 202 ) , span: span ( 1515 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 203 ) , span: span ( 1516 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1460 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1517 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1462 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1518 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 271 ) , span: span ( 1465 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 273 ) , span: span ( 1466 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 274 ) , span: span ( 1471 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 274 ) , span: span ( 1472 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1519 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1474 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 274 ) , span: span ( 1483 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1483 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 266 ) , span: span ( 1520 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 275 ) , span: span ( 1495 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1498 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1499 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 272 ) , span: span ( 1502 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 275 ) , span: span ( 1503 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1505 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1506 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1507 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1508 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 125 ) , span: span ( 1489 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1475 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1516 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1517 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "end" ) , sourceInfo: sourceInfo ( ... span: span ( 1518 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1521 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1522 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1523 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1524 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "offset" ) , sourceInfo: sourceInfo ( ... span: span ( 1525 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1526 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "old" ) , sourceInfo: sourceInfo ( ... span: span ( 1527 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1528 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "_end" ) , sourceInfo: sourceInfo ( ... span: span ( 1529 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1530 ) , scope: sourceScope ( 16 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1530 ) , scope: sourceScope ( 17 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1531 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 1532 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1526 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1533 ) , scope: sourceScope ( 19 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 20 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1534 ) , scope: sourceScope ( 21 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1535 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "entrypoint" ) , monoItemKind: monoItemFn ( ... name: symbol ( "entrypoint::entrypoint" ) , id: defId ( 69 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRepeat ( operandConstant ( constOperand ( ... span: span ( 1245 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 128 ) , id: mirConstId ( 149 ) ) ) ) , tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x80\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 1 ) ) ) ) , span: span ( 1246 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 1247 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 219 ) ) ) , span: span ( 1247 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1243 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 237 ) , id: mirConstId ( 148 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionTerminate ) , span: span ( 1244 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 104 ) ) .ProjectionElems ) ) ) ) , span: span ( 1250 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1251 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 2 ) , ty ( 81 ) ) .ProjectionElems ) ) ) ) , span: span ( 1252 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , span: span ( 1253 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 10 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1253 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 1254 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , ty ( 135 ) ) ) , span: span ( 1254 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1248 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 238 ) , id: mirConstId ( 150 ) ) ) ) , args: operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionTerminate ) , span: span ( 1249 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , ty ( 121 ) ) ) , span: span ( 1257 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1255 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 239 ) , id: mirConstId ( 151 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionTerminate ) , span: span ( 1256 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 1260 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 16 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1260 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1258 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 240 ) , id: mirConstId ( 152 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionTerminate ) , span: span ( 1259 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) , span: span ( 1259 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 7 ) ) branch ( 1 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 5 ) ) ) , span: span ( 1261 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 1259 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 9 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 1264 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1262 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 241 ) , id: mirConstId ( 153 ) ) ) ) , args: operandMove ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionTerminate ) , span: span ( 1263 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1265 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 154 ) ) ) ) ) ) , span: span ( 1265 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 8 ) ) , span: span ( 1265 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1266 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 8 ) ) , span: span ( 1263 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1267 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1268 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 242 ) , span: span ( 1269 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1250 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1251 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1252 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 218 ) , span: span ( 1244 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 219 ) , span: span ( 1247 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 243 ) , span: span ( 1247 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 1259 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 1253 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 1256 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1257 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 123 ) , span: span ( 1249 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 135 ) , span: span ( 1254 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 244 ) , span: span ( 1254 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 245 ) , span: span ( 1260 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 1270 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1264 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1253 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1260 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "input" ) , sourceInfo: sourceInfo ( ... span: span ( 1268 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 1269 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "program_id" ) , sourceInfo: sourceInfo ( ... span: span ( 1250 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 1251 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 1252 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "error" ) , sourceInfo: sourceInfo ( ... span: span ( 1264 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1271 ) ) ) ) ) monoItem ( ... symbolName: symbol ( "main" ) , monoItemKind: monoItemFn ( ... name: symbol ( "main" ) , id: defId ( 94 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1617 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1618 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 1619 ) ) ) ) ) .MonoItems ) │ @@ -49,10 +30,9 @@ │ │ #mkAdtMap ( .Map , TypeMapping ( ty ( 0 ) , typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) ) TypeMapping ( ty ( 1 ) , typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) ) TypeMapping ( ty ( 5 ) , typeInfoPtrType ( ty ( 0 ) ) ) TypeMapping ( ty ( 6 ) , typeInfoPrimitiveType ( primTypeBool ) ) TypeMapping ( ty ( 7 ) , typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) ) TypeMapping ( ty ( 8 ) , typeInfoEnumType ( "pinocchio::program_error::ProgramError" , adtDef ( 2 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) Discriminant ( variantIdx ( 2 ) , 2 ) Discriminant ( variantIdx ( 3 ) , 3 ) Discriminant ( variantIdx ( 4 ) , 4 ) Discriminant ( variantIdx ( 5 ) , 5 ) Discriminant ( variantIdx ( 6 ) , 6 ) Discriminant ( variantIdx ( 7 ) , 7 ) Discriminant ( variantIdx ( 8 ) , 8 ) Discriminant ( variantIdx ( 9 ) , 9 ) Discriminant ( variantIdx ( 10 ) , 10 ) Discriminant ( variantIdx ( 11 ) , 11 ) Discriminant ( variantIdx ( 12 ) , 12 ) Discriminant ( variantIdx ( 13 ) , 13 ) Discriminant ( variantIdx ( 14 ) , 14 ) Discriminant ( variantIdx ( 15 ) , 15 ) Discriminant ( variantIdx ( 16 ) , 16 ) Discriminant ( variantIdx ( 17 ) , 17 ) Discriminant ( variantIdx ( 18 ) , 18 ) Discriminant ( variantIdx ( 19 ) , 19 ) Discriminant ( variantIdx ( 20 ) , 20 ) Discriminant ( variantIdx ( 21 ) , 21 ) Discriminant ( variantIdx ( 22 ) , 22 ) Discriminant ( variantIdx ( 23 ) , 23 ) Discriminant ( variantIdx ( 24 ) , 24 ) Discriminant ( variantIdx ( 25 ) , 25 ) .Discriminants ) ) TypeMapping ( ty ( 10 ) , typeInfoStructType ( "core::array::TryFromSliceError" , adtDef ( 130 ) ) ) TypeMapping ( ty ( 12 ) , typeInfoEnumType ( "spl_token_interface::error::TokenError" , adtDef ( 47 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) Discriminant ( variantIdx ( 2 ) , 2 ) Discriminant ( variantIdx ( 3 ) , 3 ) Discriminant ( variantIdx ( 4 ) , 4 ) Discriminant ( variantIdx ( 5 ) , 5 ) Discriminant ( variantIdx ( 6 ) , 6 ) Discriminant ( variantIdx ( 7 ) , 7 ) Discriminant ( variantIdx ( 8 ) , 8 ) Discriminant ( variantIdx ( 9 ) , 9 ) Discriminant ( variantIdx ( 10 ) , 10 ) Discriminant ( variantIdx ( 11 ) , 11 ) Discriminant ( variantIdx ( 12 ) , 12 ) Discriminant ( variantIdx ( 13 ) , 13 ) Discriminant ( variantIdx ( 14 ) , 14 ) Discriminant ( variantIdx ( 15 ) , 15 ) Discriminant ( variantIdx ( 16 ) , 16 ) Discriminant ( variantIdx ( 17 ) , 17 ) Discriminant ( variantIdx ( 18 ) , 18 ) Discriminant ( variantIdx ( 19 ) , 19 ) .Discriminants ) ) TypeMapping ( ty ( 13 ) , typeInfoTupleType ( .Tys ) ) TypeMapping ( ty ( 14 ) , typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 15 ) , typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 17 ) , typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 19 ) , typeInfoArrayType ( ty ( 0 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 5 ) ) ) ) ) TypeMapping ( ty ( 20 ) , typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 21 ) , typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 22 ) , typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) ) TypeMapping ( ty ( 23 ) , typeInfoTupleType ( ty ( 10 ) .Tys ) ) TypeMapping ( ty ( 24 ) , typeInfoRefType ( ty ( 295 ) ) ) TypeMapping ( ty ( 26 ) , typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 28 ) , typeInfoTupleType ( ty ( 24 ) .Tys ) ) TypeMapping ( ty ( 29 ) , typeInfoRefType ( ty ( 295 ) ) ) TypeMapping ( ty ( 31 ) , typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 33 ) , typeInfoTupleType ( ty ( 29 ) .Tys ) ) TypeMapping ( ty ( 34 ) , typeInfoRefType ( ty ( 298 ) ) ) TypeMapping ( ty ( 36 ) , typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 38 ) , typeInfoTupleType ( ty ( 34 ) .Tys ) ) TypeMapping ( ty ( 39 ) , typeInfoRefType ( ty ( 300 ) ) ) TypeMapping ( ty ( 41 ) , typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 43 ) , typeInfoTupleType ( ty ( 39 ) .Tys ) ) TypeMapping ( ty ( 44 ) , typeInfoEnumType ( "core::convert::Infallible" , adtDef ( 112 ) , .Discriminants ) ) TypeMapping ( ty ( 45 ) , typeInfoTupleType ( ty ( 140 ) ty ( 81 ) .Tys ) ) TypeMapping ( ty ( 46 ) , typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 47 ) , typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 48 ) , typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 49 ) , typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 50 ) , typeInfoPrimitiveType ( primTypeUint ( uintTyU64 ) ) ) TypeMapping ( ty ( 51 ) , typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 52 ) , typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 53 ) , typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 54 ) , typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 55 ) , typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 56 ) , typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 58 ) , typeInfoRefType ( ty ( 97 ) ) ) TypeMapping ( ty ( 61 ) , typeInfoRefType ( ty ( 62 ) ) ) TypeMapping ( ty ( 62 ) , typeInfoRefType ( ty ( 124 ) ) ) TypeMapping ( ty ( 64 ) , typeInfoStructType ( "core::slice::Iter" , adtDef ( 86 ) ) ) TypeMapping ( ty ( 65 ) , typeInfoRefType ( ty ( 250 ) ) ) TypeMapping ( ty ( 67 ) , typeInfoPtrType ( ty ( 167 ) ) ) TypeMapping ( ty ( 68 ) , typeInfoArrayType ( ty ( 167 ) , noTyConst ) ) TypeMapping ( ty ( 70 ) , typeInfoRefType ( ty ( 68 ) ) ) TypeMapping ( ty ( 71 ) , typeInfoStructType ( "core::ops::Range" , adtDef ( 50 ) ) ) TypeMapping ( ty ( 73 ) , typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 74 ) , typeInfoPtrType ( ty ( 68 ) ) ) TypeMapping ( ty ( 76 ) , typeInfoRefType ( ty ( 195 ) ) ) TypeMapping ( ty ( 77 ) , typeInfoPtrType ( ty ( 19 ) ) ) TypeMapping ( ty ( 78 ) , typeInfoRefType ( ty ( 19 ) ) ) TypeMapping ( ty ( 79 ) , typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 80 ) , typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 81 ) , typeInfoRefType ( ty ( 249 ) ) ) TypeMapping ( ty ( 82 ) , typeInfoPtrType ( ty ( 249 ) ) ) TypeMapping ( ty ( 85 ) , typeInfoPtrType ( ty ( 13 ) ) ) TypeMapping ( ty ( 87 ) , typeInfoRefType ( ty ( 301 ) ) ) TypeMapping ( ty ( 89 ) , typeInfoRefType ( ty ( 302 ) ) ) TypeMapping ( ty ( 90 ) , typeInfoRefType ( ty ( 303 ) ) ) TypeMapping ( ty ( 91 ) , typeInfoRefType ( ty ( 304 ) ) ) TypeMapping ( ty ( 92 ) , typeInfoRefType ( ty ( 306 ) ) ) TypeMapping ( ty ( 93 ) , typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 94 ) , typeInfoPtrType ( ty ( 13 ) ) ) TypeMapping ( ty ( 95 ) , typeInfoStructType ( "core::fmt::Arguments" , adtDef ( 22 ) ) ) TypeMapping ( ty ( 97 ) , typeInfoEnumType ( "spl_token_interface::state::account_state::AccountState" , adtDef ( 124 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) Discriminant ( variantIdx ( 2 ) , 2 ) .Discriminants ) ) TypeMapping ( ty ( 101 ) , typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 102 ) , typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 104 ) , typeInfoRefType ( ty ( 167 ) ) ) TypeMapping ( ty ( 105 ) , typeInfoRefType ( ty ( 114 ) ) ) TypeMapping ( ty ( 106 ) , typeInfoRefType ( ty ( 104 ) ) ) TypeMapping ( ty ( 108 ) , typeInfoStructType ( "core::slice::Iter" , adtDef ( 86 ) ) ) TypeMapping ( ty ( 109 ) , typeInfoTupleType ( ty ( 1 ) ty ( 104 ) .Tys ) ) TypeMapping ( ty ( 110 ) , typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 111 ) , typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 112 ) , typeInfoRefType ( ty ( 117 ) ) ) TypeMapping ( ty ( 113 ) , typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 114 ) , typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 115 ) , typeInfoRefType ( ty ( 108 ) ) ) TypeMapping ( ty ( 116 ) , typeInfoTupleType ( ty ( 1 ) ty ( 6 ) .Tys ) ) TypeMapping ( ty ( 117 ) , typeInfoStructType ( "core::iter::Enumerate" , adtDef ( 83 ) ) ) TypeMapping ( ty ( 119 ) , typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) ) TypeMapping ( ty ( 121 ) , typeInfoPtrType ( ty ( 124 ) ) ) TypeMapping ( ty ( 122 ) , typeInfoRefType ( ty ( 128 ) ) ) TypeMapping ( ty ( 123 ) , typeInfoPtrType ( ty ( 128 ) ) ) TypeMapping ( ty ( 124 ) , typeInfoStructType ( "pinocchio::account_info::AccountInfo" , adtDef ( 56 ) ) ) TypeMapping ( ty ( 125 ) , typeInfoPtrType ( ty ( 124 ) ) ) TypeMapping ( ty ( 126 ) , typeInfoRefType ( ty ( 124 ) ) ) TypeMapping ( ty ( 127 ) , typeInfoRefType ( ty ( 128 ) ) ) TypeMapping ( ty ( 128 ) , typeInfoUnionType ( "core::mem::MaybeUninit" , adtDef ( 38 ) ) ) TypeMapping ( ty ( 129 ) , typeInfoStructType ( "core::mem::ManuallyDrop" , adtDef ( 37 ) ) ) TypeMapping ( ty ( 130 ) , typeInfoPtrType ( ty ( 128 ) ) ) TypeMapping ( ty ( 131 ) , typeInfoStructType ( "pinocchio::account_info::Account" , adtDef ( 133 ) ) ) TypeMapping ( ty ( 132 ) , typeInfoPtrType ( ty ( 0 ) ) ) TypeMapping ( ty ( 133 ) , typeInfoRefType ( ty ( 249 ) ) ) TypeMapping ( ty ( 134 ) , typeInfoPtrType ( ty ( 249 ) ) ) TypeMapping ( ty ( 135 ) , typeInfoRefType ( ty ( 312 ) ) ) TypeMapping ( ty ( 136 ) , typeInfoPtrType ( ty ( 312 ) ) ) TypeMapping ( ty ( 140 ) , typeInfoRefType ( ty ( 0 ) ) ) TypeMapping ( ty ( 149 ) , typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 150 ) , typeInfoTupleType ( ty ( 62 ) ty ( 0 ) .Tys ) ) TypeMapping ( ty ( 152 ) , typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 167 ) , typeInfoArrayType ( ty ( 0 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x20\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 2 ) ) ) ) ) TypeMapping ( ty ( 185 ) , typeInfoTupleType ( ty ( 62 ) ty ( 152 ) ty ( 62 ) ty ( 62 ) ty ( 65 ) .Tys ) ) TypeMapping ( ty ( 186 ) , typeInfoRefType ( ty ( 50 ) ) ) TypeMapping ( ty ( 195 ) , typeInfoArrayType ( ty ( 167 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) ) TypeMapping ( ty ( 201 ) , typeInfoArrayType ( ty ( 6 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) ) TypeMapping ( ty ( 202 ) , typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 203 ) , typeInfoRefType ( ty ( 64 ) ) ) TypeMapping ( ty ( 204 ) , typeInfoTupleType ( ty ( 0 ) ty ( 6 ) .Tys ) ) TypeMapping ( ty ( 205 ) , typeInfoPtrType ( ty ( 131 ) ) ) TypeMapping ( ty ( 207 ) , typeInfoPtrType ( ty ( 50 ) ) ) TypeMapping ( ty ( 218 ) , typeInfoTupleType ( ty ( 104 ) ty ( 1 ) ty ( 81 ) .Tys ) ) TypeMapping ( ty ( 219 ) , typeInfoRefType ( ty ( 312 ) ) ) TypeMapping ( ty ( 220 ) , typeInfoRefType ( ty ( 71 ) ) ) TypeMapping ( ty ( 222 ) , typeInfoTupleType ( ty ( 223 ) ty ( 167 ) .Tys ) ) TypeMapping ( ty ( 223 ) , typeInfoArrayType ( ty ( 0 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 6 ) ) ) ) ) TypeMapping ( ty ( 231 ) , typeInfoPtrType ( ty ( 295 ) ) ) TypeMapping ( ty ( 232 ) , typeInfoPtrType ( ty ( 298 ) ) ) TypeMapping ( ty ( 233 ) , typeInfoPtrType ( ty ( 300 ) ) ) TypeMapping ( ty ( 236 ) , typeInfoPtrType ( ty ( 295 ) ) ) TypeMapping ( ty ( 242 ) , typeInfoArrayType ( ty ( 128 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x80\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 1 ) ) ) ) ) TypeMapping ( ty ( 243 ) , typeInfoRefType ( ty ( 242 ) ) ) TypeMapping ( ty ( 244 ) , typeInfoRefType ( ty ( 242 ) ) ) TypeMapping ( ty ( 245 ) , typeInfoRefType ( ty ( 81 ) ) ) TypeMapping ( ty ( 246 ) , typeInfoEnumType ( "core::cmp::Ordering" , adtDef ( 127 ) , Discriminant ( variantIdx ( 0 ) , 255 ) Discriminant ( variantIdx ( 1 ) , 0 ) Discriminant ( variantIdx ( 2 ) , 1 ) .Discriminants ) ) TypeMapping ( ty ( 247 ) , typeInfoRefType ( ty ( 1 ) ) ) TypeMapping ( ty ( 249 ) , typeInfoArrayType ( ty ( 0 ) , noTyConst ) ) TypeMapping ( ty ( 250 ) , typeInfoArrayType ( ty ( 124 ) , noTyConst ) ) TypeMapping ( ty ( 251 ) , typeInfoPtrType ( ty ( 250 ) ) ) TypeMapping ( ty ( 254 ) , typeInfoTupleType ( ty ( 50 ) ty ( 6 ) .Tys ) ) TypeMapping ( ty ( 258 ) , typeInfoPtrType ( ty ( 167 ) ) ) TypeMapping ( ty ( 259 ) , typeInfoStructType ( "core::marker::PhantomData" , adtDef ( 135 ) ) ) TypeMapping ( ty ( 260 ) , typeInfoStructType ( "core::ptr::NonNull" , adtDef ( 85 ) ) ) TypeMapping ( ty ( 261 ) , typeInfoStructType ( "core::ptr::NonNull" , adtDef ( 85 ) ) ) TypeMapping ( ty ( 262 ) , typeInfoStructType ( "core::marker::PhantomData" , adtDef ( 135 ) ) ) TypeMapping ( ty ( 263 ) , typeInfoStructType ( "core::ptr::NonNull" , adtDef ( 85 ) ) ) TypeMapping ( ty ( 264 ) , typeInfoStructType ( "core::ptr::NonNull" , adtDef ( 85 ) ) ) TypeMapping ( ty ( 265 ) , typeInfoPtrType ( ty ( 260 ) ) ) TypeMapping ( ty ( 266 ) , typeInfoPtrType ( ty ( 1 ) ) ) TypeMapping ( ty ( 267 ) , typeInfoPtrType ( ty ( 260 ) ) ) TypeMapping ( ty ( 268 ) , typeInfoPtrType ( ty ( 67 ) ) ) TypeMapping ( ty ( 269 ) , typeInfoRefType ( ty ( 260 ) ) ) TypeMapping ( ty ( 270 ) , typeInfoPtrType ( ty ( 67 ) ) ) TypeMapping ( ty ( 271 ) , typeInfoPtrType ( ty ( 263 ) ) ) TypeMapping ( ty ( 272 ) , typeInfoPtrType ( ty ( 263 ) ) ) TypeMapping ( ty ( 273 ) , typeInfoPtrType ( ty ( 121 ) ) ) TypeMapping ( ty ( 274 ) , typeInfoRefType ( ty ( 263 ) ) ) TypeMapping ( ty ( 275 ) , typeInfoPtrType ( ty ( 121 ) ) ) TypeMapping ( ty ( 280 ) , typeInfoTupleType ( ty ( 247 ) ty ( 247 ) .Tys ) ) TypeMapping ( ty ( 281 ) , typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) ) TypeMapping ( ty ( 283 ) , typeInfoRefType ( ty ( 205 ) ) ) TypeMapping ( ty ( 286 ) , typeInfoPtrType ( ty ( 131 ) ) ) TypeMapping ( ty ( 293 ) , typeInfoRefType ( ty ( 294 ) ) ) TypeMapping ( ty ( 294 ) , typeInfoStructType ( "core::panic::Location" , adtDef ( 109 ) ) ) TypeMapping ( ty ( 295 ) , typeInfoStructType ( "spl_token_interface::state::account::Account" , adtDef ( 111 ) ) ) TypeMapping ( ty ( 298 ) , typeInfoStructType ( "spl_token_interface::state::multisig::Multisig" , adtDef ( 114 ) ) ) TypeMapping ( ty ( 300 ) , typeInfoStructType ( "spl_token_interface::state::mint::Mint" , adtDef ( 115 ) ) ) TypeMapping ( ty ( 301 ) , typeInfoPrimitiveType ( primTypeStr ) ) TypeMapping ( ty ( 302 ) , typeInfoArrayType ( ty ( 87 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 3 ) ) ) ) ) TypeMapping ( ty ( 303 ) , typeInfoArrayType ( ty ( 87 ) , noTyConst ) ) TypeMapping ( ty ( 304 ) , typeInfoArrayType ( ty ( 305 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 4 ) ) ) ) ) TypeMapping ( ty ( 305 ) , typeInfoStructType ( "core::fmt::rt::Argument" , adtDef ( 120 ) ) ) TypeMapping ( ty ( 306 ) , typeInfoArrayType ( ty ( 305 ) , noTyConst ) ) TypeMapping ( ty ( 307 ) , typeInfoRefType ( ty ( 308 ) ) ) TypeMapping ( ty ( 308 ) , typeInfoArrayType ( ty ( 309 ) , noTyConst ) ) TypeMapping ( ty ( 309 ) , typeInfoStructType ( "core::fmt::rt::Placeholder" , adtDef ( 121 ) ) ) TypeMapping ( ty ( 312 ) , typeInfoArrayType ( ty ( 128 ) , noTyConst ) ) .TypeMappings ) │ +│ ... │ -│ -│ GENERATEDCOUNTER_CELL -│ +│ ... │ │ #execTerminator ( terminator ( ... kind: terminatorKindCall ( ... func: operandC │ span: 0 @@ -67,15 +47,15 @@ ~> #execStmts ( statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 262 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) ) ) , span: span ( 257 ) ) .Statements ) ~> #execTerminator ( terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 257 ) ) ) - - RETVAL_CELL:RetVal - ty ( 118 ) - ListItem ( basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 258 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 259 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 257 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 261 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 261 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 262 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) ) ) , span: span ( 257 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 257 ) ) ) ) ListItem ( basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 262 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 264 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 265 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 77 ) ) ) , span: span ( 266 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 267 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 78 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 268 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 269 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 270 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 78 ) ) .ProjectionElems ) ) ) ) , span: span ( 272 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 78 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 273 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 274 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 78 ) ) .ProjectionElems ) ) ) ) , span: span ( 276 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 11 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 276 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 277 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 263 ) ) ) ) ListItem ( basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 262 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 79 ) , id: mirConstId ( 22 ) ) ) ) ) ) , span: span ( 279 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 270 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 80 ) , id: mirConstId ( 23 ) ) ) ) ) ) , span: span ( 280 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 274 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 10 ) , id: mirConstId ( 6 ) ) ) ) .Operands ) ) , span: span ( 281 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 278 ) ) ) ) ListItem ( basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageDead ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 283 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 282 ) ) ) ) + ListItem ( basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 258 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 259 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 257 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 261 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 261 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 262 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) ) ) , span: span ( 257 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 257 ) ) ) ) + ListItem ( basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 262 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 264 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 265 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 77 ) ) ) , span: span ( 266 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 267 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 78 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 268 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 269 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 270 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 78 ) ) .ProjectionElems ) ) ) ) , span: span ( 272 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 78 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 273 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 274 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 78 ) ) .ProjectionElems ) ) ) ) , span: span ( 276 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 11 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 276 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 277 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 263 ) ) ) ) + ListItem ( basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 262 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 79 ) , id: mirConstId ( 22 ) ) ) ) ) ) , span: span ( 279 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 270 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 80 ) , id: mirConstId ( 23 ) ) ) ) ) ) , span: span ( 280 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 274 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 10 ) , id: mirConstId ( 6 ) ) ) ) .Operands ) ) , span: span ( 281 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 278 ) ) ) ) + ListItem ( basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageDead ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 283 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 282 ) ) ) ) ty ( 144 ) @@ -90,31 +70,353 @@ unwindActionContinue - ListItem ( newLocal ( ty ( 21 ) , mutabilityMut ) ) ListItem ( typedValue ( Reference ( 3 , place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , mutabilityNot ) , ty ( 81 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 80 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 79 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 6 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 1 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 77 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 78 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 82 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 78 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 19 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 78 ) , mutabilityMut ) ) + ListItem ( newLocal ( ty ( 21 ) , mutabilityMut ) ) + ListItem ( typedValue ( Reference ( 3 , place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , mutabilityNot ) , ty ( 81 ) , mutabilityNot ) ) + ListItem ( newLocal ( ty ( 80 ) , mutabilityMut ) ) + ListItem ( newLocal ( ty ( 79 ) , mutabilityMut ) ) + ListItem ( newLocal ( ty ( 6 ) , mutabilityMut ) ) + ListItem ( newLocal ( ty ( 1 ) , mutabilityMut ) ) + ListItem ( newLocal ( ty ( 77 ) , mutabilityNot ) ) + ListItem ( newLocal ( ty ( 78 ) , mutabilityNot ) ) + ListItem ( newLocal ( ty ( 82 ) , mutabilityMut ) ) + ListItem ( newLocal ( ty ( 78 ) , mutabilityNot ) ) + ListItem ( newLocal ( ty ( 19 ) , mutabilityNot ) ) + ListItem ( newLocal ( ty ( 78 ) , mutabilityMut ) ) - ListItem ( StackFrame ( ty ( 143 ) , place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwindActionContinue , ListItem ( newLocal ( ty ( 21 ) , mutabilityMut ) ) ListItem ( Moved ) ) ) ListItem ( StackFrame ( CURRENTFUNC_CELL:Ty , place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionContinue , ListItem ( newLocal ( ty ( 14 ) , mutabilityMut ) ) ListItem ( typedValue ( Reference ( 1 , place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , mutabilityNot ) , ty ( 65 ) , mutabilityNot ) ) ListItem ( typedValue ( Reference ( 1 , place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , mutabilityNot ) , ty ( 81 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 50 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 56 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 20 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 21 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 22 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 17 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 19 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 149 ) , mutabilityMut ) ) ) ) ListItem ( StackFrame ( CALLER_CELL:Ty , DEST_CELL:Place , TARGET_CELL:MaybeBasicBlockIdx , UNWIND_CELL:UnwindAction , ListItem ( newLocal ( ty ( 0 ) , mutabilityNot ) ) ListItem ( typedValue ( Reference ( 0 , place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , mutabilityNot ) , ty ( 65 ) , mutabilityNot ) ) ListItem ( typedValue ( Reference ( 0 , place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , mutabilityNot ) , ty ( 81 ) , mutabilityNot ) ) ListItem ( typedValue ( Range ( ARG_ARRAY1:List ) , ty ( 250 ) , mutabilityNot ) ) ListItem ( typedValue ( Range ( ARG_ARRAY2:List ) , ty ( 249 ) , mutabilityNot ) ) ) ) + ListItem ( StackFrame ( ty ( 143 ) , place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwindActionContinue , ListItem ( newLocal ( ty ( 21 ) , mutabilityMut ) ) ListItem ( Moved ) ) ) + ListItem ( StackFrame ( CURRENTFUNC_CELL:Ty , place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , noBasicBlockIdx , unwindActionContinue , ListItem ( newLocal ( ty ( 14 ) , mutabilityMut ) ) ListItem ( typedValue ( Reference ( 1 , place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , mutabilityNot ) , ty ( 65 ) , mutabilityNot ) ) ListItem ( typedValue ( Reference ( 1 , place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , mutabilityNot ) , ty ( 81 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 50 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 56 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 20 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 21 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 22 ) , mutabilityMut ) ) ListItem ( newLocal ( ty ( 17 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 19 ) , mutabilityNot ) ) ListItem ( newLocal ( ty ( 149 ) , mutabilityMut ) ) ) ) + ListItem ( StackFrame ( CALLER_CELL:Ty , DEST_CELL:Place , TARGET_CELL:MaybeBasicBlockIdx , UNWIND_CELL:UnwindAction , ListItem ( newLocal ( ty ( 0 ) , mutabilityNot ) ) ListItem ( typedValue ( Reference ( 0 , place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , mutabilityNot ) , ty ( 65 ) , mutabilityNot ) ) ListItem ( typedValue ( Reference ( 0 , place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , mutabilityNot ) , ty ( 81 ) , mutabilityNot ) ) ListItem ( typedValue ( Range ( ARG_ARRAY1:List ) , ty ( 250 ) , mutabilityNot ) ) ListItem ( typedValue ( Range ( ARG_ARRAY2:List ) , ty ( 249 ) , mutabilityNot ) ) ) ) - - MEMORY_CELL:Map - - ty ( 278 ) |-> monoItemFn ( ... name: symbol ( "::min" ) , id: defId ( 91 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1586 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 276 ) , id: mirConstId ( 195 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1587 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 277 ) , id: mirConstId ( 196 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1588 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1589 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 1590 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1591 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1592 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1591 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1592 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1593 ) ) ) ) ty ( 279 ) |-> monoItemFn ( ... name: symbol ( " fn(&'a usize, &'b usize) -> core::cmp::Ordering {::cmp} as core::ops::FnOnce<(&usize, &usize)>>::call_once" ) , id: defId ( 102 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 247 ) ) .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 247 ) ) .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1680 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1680 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 246 ) , span: span ( 1680 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 277 ) , span: span ( 1680 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 280 ) , span: span ( 1680 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: .VarDebugInfos , spreadArg: someLocal ( local ( 2 ) ) , span: span ( 1680 ) ) ) ) ty ( 292 ) |-> monoItemFn ( ... name: symbol ( "::forward_unchecked" ) , id: defId ( 12 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 179 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 6 ) ) ) , span: span ( 180 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 179 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 181 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 59 ) , id: mirConstId ( 15 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 182 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 184 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpAddUnchecked , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 185 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 183 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 186 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 187 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 188 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 179 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 182 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "start" ) , sourceInfo: sourceInfo ( ... span: span ( 187 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "n" ) , sourceInfo: sourceInfo ( ... span: span ( 188 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 189 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 190 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 191 ) ) ) ) ty ( 240 ) |-> monoItemFn ( ... name: symbol ( "entrypoint::process_instruction" ) , id: defId ( 43 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 601 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 137 ) , id: mirConstId ( 52 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 602 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 2 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 605 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 603 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 138 ) , id: mirConstId ( 53 ) ) ) ) , args: operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 604 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 606 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 139 ) , id: mirConstId ( 54 ) ) ) ) , args: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 606 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) ) , span: span ( 606 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) branch ( 1 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 606 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 606 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 45 ) ) .ProjectionElems ) ) ) ) , span: span ( 608 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 12 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 140 ) ) .ProjectionElems ) ) ) ) , span: span ( 609 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 12 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 81 ) ) .ProjectionElems ) ) ) ) , span: span ( 610 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 4 ) , projection: projectionElemDeref .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 3 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 7 ) ) ) , span: span ( 607 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 6 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 611 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 611 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 606 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 614 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 612 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 142 ) , id: mirConstId ( 56 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 613 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 615 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 143 ) , id: mirConstId ( 57 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 616 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 617 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 618 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 619 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 620 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 621 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 140 ) , span: span ( 609 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 610 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 46 ) , span: span ( 606 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 47 ) , span: span ( 604 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 101 ) , span: span ( 602 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 605 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 611 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 611 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 45 ) , span: span ( 608 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 614 ) , mut: mutabilityMut ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "_program_id" ) , sourceInfo: sourceInfo ( ... span: span ( 619 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 620 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 621 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "discriminator" ) , sourceInfo: sourceInfo ( ... span: span ( 609 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 610 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 611 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 608 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 622 ) ) ) ) ty ( 290 ) |-> monoItemFn ( ... name: symbol ( " as core::iter::range::RangeIteratorImpl>::spec_next" ) , id: defId ( 107 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 1721 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1722 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) , span: span ( 1722 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1723 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) ) , span: span ( 1723 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1721 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 291 ) , id: mirConstId ( 207 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1721 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 1721 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1727 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1727 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1728 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1729 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1724 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 292 ) , id: mirConstId ( 208 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1725 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1726 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1731 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1732 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1733 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 1730 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1727 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1727 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1734 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 1730 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 1736 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1735 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 73 ) , span: span ( 1737 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 220 ) , span: span ( 1738 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1721 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1722 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1723 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1739 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1729 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1738 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "old" ) , sourceInfo: sourceInfo ( ... span: span ( 1739 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1740 ) ) ) ) ty ( 291 ) |-> monoItemFn ( ... name: symbol ( "core::cmp::impls::::lt" ) , id: defId ( 105 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1707 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1707 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1708 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1708 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1709 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1710 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1710 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1706 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1711 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1712 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1713 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1707 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1708 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1712 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1713 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1714 ) ) ) ) ty ( 241 ) |-> monoItemFn ( ... name: symbol ( ">::into" ) , id: defId ( 90 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1580 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 282 ) , id: mirConstId ( 199 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1581 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1582 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1583 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1584 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1584 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1585 ) ) ) ) ty ( 248 ) |-> monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts::precondition_check" ) , id: defId ( 21 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 308 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 309 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 309 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 310 ) ) statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 311 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 306 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 84 ) , id: mirConstId ( 25 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 10 ) ) , unwind: unwindActionUnreachable ) , span: span ( 307 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 313 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 314 ) ) statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 314 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 315 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 316 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 312 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 11 ) ) .Branches , otherwise: basicBlockIdx ( 12 ) ) ) , span: span ( 312 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 318 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 318 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 317 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 313 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 319 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 86 ) , id: mirConstId ( 26 ) ) ) ) , args: operandConstant ( constOperand ( ... span: span ( 320 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 87 ) , id: mirConstId ( 27 ) ) ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionUnreachable ) , span: span ( 321 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 322 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 323 ) ) statement ( ... kind: statementKindStorageLive ( local ( 18 ) ) , span: span ( 324 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 325 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 326 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 327 ) ) statement ( ... kind: statementKindStorageDead ( local ( 18 ) ) , span: span ( 324 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 328 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 329 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 310 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 308 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 322 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 310 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 308 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 330 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 331 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 332 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 333 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 332 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 331 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 334 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 7 ) ) ) , span: span ( 322 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 330 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 337 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 339 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 29 ) ) ) ) , ty ( 90 ) ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 340 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 91 ) , id: mirConstId ( 30 ) ) ) ) , ty ( 92 ) ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 22 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 93 ) , id: mirConstId ( 31 ) ) ) ) operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 341 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 342 ) ) statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 342 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 335 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 88 ) , id: mirConstId ( 28 ) ) ) ) , args: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionTerminate ) , span: span ( 336 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 330 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 344 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 344 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 14 ) ) , span: span ( 343 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , expected: false , msg: assertMessageDivisionByZero ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\x7f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 32 ) ) ) ) ) , target: basicBlockIdx ( 13 ) , unwind: unwindActionTerminate ) , span: span ( 345 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpDiv , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\x7f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 32 ) ) ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 345 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 14 ) ) , span: span ( 343 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 346 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 346 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLe , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 347 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 348 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 349 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 314 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 314 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 350 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 94 ) , span: span ( 351 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 351 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 351 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 351 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 308 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 309 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 314 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 321 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 323 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 336 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 95 ) , span: span ( 337 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 331 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 352 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 332 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 311 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 90 ) , span: span ( 338 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 92 ) , span: span ( 340 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 353 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 315 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 312 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 346 ) , mut: mutabilityMut ) .LocalDecls , argCount: 4 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 351 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "size" ) , sourceInfo: sourceInfo ( ... span: span ( 351 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 351 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 351 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 4 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 354 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 355 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "is_zst" ) , sourceInfo: sourceInfo ( ... span: span ( 356 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 357 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "is_zst" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 357 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 359 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 360 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 361 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 362 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "pieces" ) , sourceInfo: sourceInfo ( ... span: span ( 363 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 339 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 29 ) ) ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 364 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 353 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 365 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 13 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "size" ) , sourceInfo: sourceInfo ( ... span: span ( 366 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 367 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "max_len" ) , sourceInfo: sourceInfo ( ... span: span ( 315 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 368 ) ) ) ) ty ( 282 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::program_error:: for u64>::from" ) , id: defId ( 88 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 1537 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) branch ( 1 , basicBlockIdx ( 27 ) ) branch ( 2 , basicBlockIdx ( 26 ) ) branch ( 3 , basicBlockIdx ( 25 ) ) branch ( 4 , basicBlockIdx ( 24 ) ) branch ( 5 , basicBlockIdx ( 23 ) ) branch ( 6 , basicBlockIdx ( 22 ) ) branch ( 7 , basicBlockIdx ( 21 ) ) branch ( 8 , basicBlockIdx ( 20 ) ) branch ( 9 , basicBlockIdx ( 19 ) ) branch ( 10 , basicBlockIdx ( 18 ) ) branch ( 11 , basicBlockIdx ( 17 ) ) branch ( 12 , basicBlockIdx ( 16 ) ) branch ( 13 , basicBlockIdx ( 15 ) ) branch ( 14 , basicBlockIdx ( 14 ) ) branch ( 15 , basicBlockIdx ( 13 ) ) branch ( 16 , basicBlockIdx ( 12 ) ) branch ( 17 , basicBlockIdx ( 11 ) ) branch ( 18 , basicBlockIdx ( 10 ) ) branch ( 19 , basicBlockIdx ( 9 ) ) branch ( 20 , basicBlockIdx ( 8 ) ) branch ( 21 , basicBlockIdx ( 7 ) ) branch ( 22 , basicBlockIdx ( 6 ) ) branch ( 23 , basicBlockIdx ( 5 ) ) branch ( 24 , basicBlockIdx ( 4 ) ) branch ( 25 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1536 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 1537 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 7 ) ) .ProjectionElems ) ) ) ) , span: span ( 1539 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 28 ) ) .Branches , otherwise: basicBlockIdx ( 29 ) ) ) , span: span ( 1538 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1540 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x1a\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 168 ) ) ) ) ) ) , span: span ( 1540 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1540 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1541 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x19\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 169 ) ) ) ) ) ) , span: span ( 1541 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1541 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1542 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x18\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 170 ) ) ) ) ) ) , span: span ( 1542 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1542 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1543 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x17\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 171 ) ) ) ) ) ) , span: span ( 1543 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1543 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1544 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x16\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 172 ) ) ) ) ) ) , span: span ( 1544 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1544 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1545 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x15\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 173 ) ) ) ) ) ) , span: span ( 1545 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1545 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1546 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x14\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 174 ) ) ) ) ) ) , span: span ( 1546 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1546 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1547 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x13\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 175 ) ) ) ) ) ) , span: span ( 1547 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1547 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1548 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x12\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 176 ) ) ) ) ) ) , span: span ( 1548 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1548 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1549 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x11\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 177 ) ) ) ) ) ) , span: span ( 1549 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1549 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1550 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x10\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 178 ) ) ) ) ) ) , span: span ( 1550 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1550 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1551 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x0f\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 179 ) ) ) ) ) ) , span: span ( 1551 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1551 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1552 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x0e\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 180 ) ) ) ) ) ) , span: span ( 1552 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1552 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1553 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\r\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 181 ) ) ) ) ) ) , span: span ( 1553 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1553 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1554 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\f\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 182 ) ) ) ) ) ) , span: span ( 1554 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1554 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1555 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x0b\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 183 ) ) ) ) ) ) , span: span ( 1555 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1555 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1556 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\n\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 184 ) ) ) ) ) ) , span: span ( 1556 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1556 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1557 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\t\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 185 ) ) ) ) ) ) , span: span ( 1557 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1557 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1558 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x08\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 186 ) ) ) ) ) ) , span: span ( 1558 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1558 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1559 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x07\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 187 ) ) ) ) ) ) , span: span ( 1559 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1559 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1560 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x06\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 188 ) ) ) ) ) ) , span: span ( 1560 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1560 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1561 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x05\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 189 ) ) ) ) ) ) , span: span ( 1561 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1561 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1562 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x04\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 190 ) ) ) ) ) ) , span: span ( 1562 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1562 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1563 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x03\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 191 ) ) ) ) ) ) , span: span ( 1563 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1563 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1564 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x02\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 192 ) ) ) ) ) ) , span: span ( 1564 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1564 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1566 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x01\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 193 ) ) ) ) ) ) , span: span ( 1566 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1565 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 50 ) ) ) , span: span ( 1567 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1565 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1568 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1569 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1570 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 1571 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 1539 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "error" ) , sourceInfo: sourceInfo ( ... span: span ( 1570 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "error" ) , sourceInfo: sourceInfo ( ... span: span ( 1539 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1572 ) ) ) ) ty ( 284 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::data_ptr" ) , id: defId ( 100 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) ) , span: span ( 1662 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 286 ) ) ) , span: span ( 1663 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 132 ) ) ) , span: span ( 1664 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1660 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 216 ) , id: mirConstId ( 128 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1661 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1665 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1666 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1667 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 132 ) , span: span ( 1668 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1669 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1664 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 286 ) , span: span ( 1663 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1662 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1661 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1669 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1670 ) ) ) ) ty ( 285 ) |-> monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts_mut::<'_, u8>" ) , id: defId ( 72 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1304 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 6 ) ) ) , span: span ( 180 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1304 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1307 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 94 ) ) ) , span: span ( 1307 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1308 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 0 ) ) ) , span: span ( 1 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1309 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 0 ) ) ) , span: span ( 1287 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1305 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 252 ) , id: mirConstId ( 156 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1306 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1311 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1311 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1311 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1310 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1313 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1314 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindRawPtr ( ty ( 249 ) , mutabilityMut ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1315 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 8 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1316 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1317 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1312 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 133 ) , span: span ( 1318 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1319 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1320 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1304 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 1306 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 94 ) , span: span ( 1307 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1308 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1309 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 134 ) , span: span ( 1314 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1319 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1320 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1321 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1322 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data_pointer" ) , sourceInfo: sourceInfo ( ... span: span ( 1323 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "metadata" ) , sourceInfo: sourceInfo ( ... span: span ( 1324 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1325 ) ) ) ) ty ( 288 ) |-> monoItemFn ( ... name: symbol ( "core::ptr::align_offset::" ) , id: defId ( 0 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 0 ) ) ) , span: span ( 1 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 3 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 4 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 1 ) ) .Branches , otherwise: basicBlockIdx ( 5 ) ) ) , span: span ( 0 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 6 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 5 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 8 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 8 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 7 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 9 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 9 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 7 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpRem , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 12 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 10 ) ) ) , span: span ( 11 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 14 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 14 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 15 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandConstant ( constOperand ( ... span: span ( 16 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 15 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 17 ) ) statement ( ... kind: statementKindStorageDead ( local ( 10 ) ) , span: span ( 18 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 18 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 19 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 20 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 20 ) ) statement ( ... kind: statementKindIntrinsic ( nonDivergingIntrinsicAssume ( operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 21 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 22 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpRem , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 23 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 7 ) ) .Branches , otherwise: basicBlockIdx ( 8 ) ) ) , span: span ( 13 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 24 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 2 ) , id: mirConstId ( 3 ) ) ) ) , args: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionUnreachable ) , span: span ( 25 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 27 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 27 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 9 ) ) , span: span ( 26 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 30 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 28 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 3 ) , id: mirConstId ( 4 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 11 ) ) , unwind: unwindActionUnreachable ) , span: span ( 29 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 31 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 3 ) , id: mirConstId ( 4 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 12 ) ) , unwind: unwindActionUnreachable ) , span: span ( 32 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 33 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 33 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 14 ) ) .Branches , otherwise: basicBlockIdx ( 13 ) ) ) , span: span ( 33 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 35 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 15 ) ) , span: span ( 34 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 36 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 15 ) ) , span: span ( 34 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 38 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 39 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 39 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShlUnchecked , operandConstant ( constOperand ( ... span: span ( 40 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 41 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 42 ) ) statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 43 ) ) statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 44 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 45 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 46 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 43 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 47 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 16 ) ) .Branches , otherwise: basicBlockIdx ( 18 ) ) ) , span: span ( 37 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 50 ) ) statement ( ... kind: statementKindStorageLive ( local ( 23 ) ) , span: span ( 51 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 51 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShrUnchecked , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 52 ) ) statement ( ... kind: statementKindStorageDead ( local ( 23 ) ) , span: span ( 53 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 54 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 55 ) ) statement ( ... kind: statementKindStorageLive ( local ( 26 ) ) , span: span ( 56 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 56 ) ) statement ( ... kind: statementKindStorageLive ( local ( 27 ) ) , span: span ( 57 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 57 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShrUnchecked , operandMove ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 58 ) ) statement ( ... kind: statementKindStorageDead ( local ( 27 ) ) , span: span ( 59 ) ) statement ( ... kind: statementKindStorageDead ( local ( 26 ) ) , span: span ( 59 ) ) statement ( ... kind: statementKindStorageLive ( local ( 29 ) ) , span: span ( 60 ) ) statement ( ... kind: statementKindStorageLive ( local ( 30 ) ) , span: span ( 61 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 30 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 61 ) ) statement ( ... kind: statementKindStorageLive ( local ( 31 ) ) , span: span ( 62 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 31 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 62 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 29 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShrUnchecked , operandMove ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 31 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 60 ) ) statement ( ... kind: statementKindStorageDead ( local ( 31 ) ) , span: span ( 63 ) ) statement ( ... kind: statementKindStorageDead ( local ( 30 ) ) , span: span ( 63 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 29 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 64 ) ) statement ( ... kind: statementKindStorageDead ( local ( 29 ) ) , span: span ( 65 ) ) statement ( ... kind: statementKindStorageLive ( local ( 32 ) ) , span: span ( 66 ) ) statement ( ... kind: statementKindStorageLive ( local ( 33 ) ) , span: span ( 67 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 48 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 4 ) , id: mirConstId ( 5 ) ) ) ) , args: operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 33 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 17 ) ) , unwind: unwindActionContinue ) , span: span ( 49 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 32 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpMul , operandCopy ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 33 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 66 ) ) statement ( ... kind: statementKindStorageDead ( local ( 33 ) ) , span: span ( 68 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandMove ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 69 ) ) statement ( ... kind: statementKindStorageDead ( local ( 32 ) ) , span: span ( 70 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 71 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 50 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 73 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 73 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 71 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 72 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 72 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 74 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 75 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 76 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 77 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 78 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 79 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 80 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 81 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 82 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 14 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 15 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 83 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 20 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 84 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 30 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 85 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 86 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 33 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 87 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 39 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 43 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 44 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 88 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 51 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 89 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 90 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 56 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 57 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 91 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 60 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 61 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 62 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 67 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "p" ) , sourceInfo: sourceInfo ( ... span: span ( 75 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 76 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "stride" ) , sourceInfo: sourceInfo ( ... span: span ( 77 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "addr" ) , sourceInfo: sourceInfo ( ... span: span ( 78 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "a_minus_one" ) , sourceInfo: sourceInfo ( ... span: span ( 79 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "p_mod_a" ) , sourceInfo: sourceInfo ( ... span: span ( 80 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "a_mod_stride" ) , sourceInfo: sourceInfo ( ... span: span ( 81 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "aligned_address" ) , sourceInfo: sourceInfo ( ... span: span ( 82 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "byte_offset" ) , sourceInfo: sourceInfo ( ... span: span ( 83 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "addr_mod_stride" ) , sourceInfo: sourceInfo ( ... span: span ( 84 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "gcdpow" ) , sourceInfo: sourceInfo ( ... span: span ( 30 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "x" ) , sourceInfo: sourceInfo ( ... span: span ( 85 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "y" ) , sourceInfo: sourceInfo ( ... span: span ( 86 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "gcd" ) , sourceInfo: sourceInfo ( ... span: span ( 87 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "a2" ) , sourceInfo: sourceInfo ( ... span: span ( 88 ) , scope: sourceScope ( 13 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "a2minus1" ) , sourceInfo: sourceInfo ( ... span: span ( 89 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "s2" ) , sourceInfo: sourceInfo ( ... span: span ( 90 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "minusp2" ) , sourceInfo: sourceInfo ( ... span: span ( 91 ) , scope: sourceScope ( 16 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 19 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 94 ) ) ) ) ty ( 287 ) |-> monoItemFn ( ... name: symbol ( "core::array::equality::::eq" ) , id: defId ( 78 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1389 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 255 ) , id: mirConstId ( 161 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1390 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1391 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1392 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1393 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1394 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1393 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1394 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1395 ) ) ) ) ty ( 289 ) |-> monoItemFn ( ... name: symbol ( "core::slice::Iter::<'_, [u8; 32]>::new" ) , id: defId ( 84 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1428 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1429 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1430 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 68 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1431 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 1432 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 167 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1433 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1434 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1435 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1427 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1427 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 1437 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1438 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1439 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , ty ( 258 ) ) ) , span: span ( 1440 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 583 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1441 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 1438 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1442 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1444 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1444 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 86 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) genericArgKindType ( ty ( 167 ) ) .GenericArgs , someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 3 ) ) , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 259 ) , id: mirConstId ( 164 ) ) ) ) .Operands ) ) , span: span ( 1445 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1446 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1447 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1443 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 108 ) , span: span ( 1448 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 70 ) , span: span ( 1449 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1450 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1451 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 261 ) , span: span ( 1429 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1435 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 258 ) , span: span ( 1438 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 258 ) , span: span ( 1439 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1444 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 74 ) , span: span ( 1452 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1432 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 1449 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1450 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 1451 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "end_or_len" ) , sourceInfo: sourceInfo ( ... span: span ( 1435 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 1453 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 1454 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1455 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "addr" ) , sourceInfo: sourceInfo ( ... span: span ( 1457 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 585 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 586 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1458 ) ) ) ) ty ( 228 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_unchecked::" ) , id: defId ( 66 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1207 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1208 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"R\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 144 ) ) ) ) ) ) , span: span ( 1206 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1206 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1210 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1211 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1212 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 230 ) , id: mirConstId ( 143 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1213 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 233 ) ) ) , span: span ( 1214 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1215 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1216 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1209 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 41 ) , span: span ( 1217 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1218 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1206 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1207 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1210 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 1215 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 233 ) , span: span ( 1214 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1213 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1218 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1219 ) ) ) ) ty ( 229 ) |-> monoItemFn ( ... name: symbol ( "core::result::Result::<&spl_token_interface::state::mint::Mint, pinocchio::program_error::ProgramError>::and_then::<&spl_token_interface::state::mint::Mint, {closure@p-token/src/spl_token_interface/mod.rs:1481:23: 1481:30}>" ) , id: defId ( 6 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 127 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 126 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 127 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 129 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 130 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 128 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 39 ) ) .ProjectionElems ) ) ) ) , span: span ( 133 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 132 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 132 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 131 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 40 ) , id: mirConstId ( 13 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 132 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 134 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 134 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 134 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 135 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 41 ) , span: span ( 136 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 41 ) , span: span ( 137 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 42 ) , span: span ( 138 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 139 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 133 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 42 ) , span: span ( 131 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 43 ) , span: span ( 132 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 129 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 137 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 138 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 133 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 129 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 140 ) ) ) ) ty ( 226 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_unchecked::" ) , id: defId ( 66 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1207 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1208 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xa5\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 142 ) ) ) ) ) ) , span: span ( 1206 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1206 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1210 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1211 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1212 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 230 ) , id: mirConstId ( 143 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1213 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 231 ) ) ) , span: span ( 1214 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1215 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1216 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1209 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 26 ) , span: span ( 1217 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1218 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1206 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1207 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1210 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1215 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 231 ) , span: span ( 1214 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1213 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1218 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1219 ) ) ) ) ty ( 224 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_unchecked::" ) , id: defId ( 66 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1207 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1208 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"c\x01\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 102 ) ) ) ) ) ) , span: span ( 1206 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1206 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1210 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1211 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1212 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 230 ) , id: mirConstId ( 143 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1213 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 232 ) ) ) , span: span ( 1214 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1215 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1216 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1209 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 36 ) , span: span ( 1217 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1218 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1206 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1207 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1210 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 1215 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 232 ) , span: span ( 1214 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1213 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1218 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1219 ) ) ) ) ty ( 227 ) |-> monoItemFn ( ... name: symbol ( "core::result::Result::<&spl_token_interface::state::account::Account, pinocchio::program_error::ProgramError>::and_then::<&spl_token_interface::state::account::Account, {closure@p-token/src/spl_token_interface/mod.rs:1481:23: 1481:30}>" ) , id: defId ( 6 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 127 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 126 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 127 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 129 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 130 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 128 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 24 ) ) .ProjectionElems ) ) ) ) , span: span ( 133 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 132 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 132 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 131 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 10 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 132 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 134 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 134 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 134 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 135 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 26 ) , span: span ( 136 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 26 ) , span: span ( 137 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 27 ) , span: span ( 138 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 139 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 133 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 27 ) , span: span ( 131 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 28 ) , span: span ( 132 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 129 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 137 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 138 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 133 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 129 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 140 ) ) ) ) ty ( 225 ) |-> monoItemFn ( ... name: symbol ( "core::result::Result::<&spl_token_interface::state::multisig::Multisig, pinocchio::program_error::ProgramError>::and_then::<&spl_token_interface::state::multisig::Multisig, {closure@p-token/src/spl_token_interface/mod.rs:1481:23: 1481:30}>" ) , id: defId ( 6 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 127 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 126 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 127 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 129 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 130 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 128 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 34 ) ) .ProjectionElems ) ) ) ) , span: span ( 133 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 132 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 132 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 131 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 35 ) , id: mirConstId ( 12 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 132 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 134 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 134 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 134 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 135 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 36 ) , span: span ( 136 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 36 ) , span: span ( 137 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 37 ) , span: span ( 138 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 139 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 133 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 37 ) , span: span ( 131 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 38 ) , span: span ( 132 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 129 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 137 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 138 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 133 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 129 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 140 ) ) ) ) ty ( 221 ) |-> monoItemFn ( ... name: symbol ( "core::num::::to_le_bytes" ) , id: defId ( 75 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 19 ) ) ) , span: span ( 1358 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1357 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 19 ) , span: span ( 1359 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1360 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1360 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1361 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1362 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1363 ) ) ) ) ty ( 208 ) |-> monoItemFn ( ... name: symbol ( "core::cmp::min::" ) , id: defId ( 92 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1594 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 278 ) , id: mirConstId ( 197 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1595 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1596 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 1597 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1598 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1599 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "v1" ) , sourceInfo: sourceInfo ( ... span: span ( 1598 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v2" ) , sourceInfo: sourceInfo ( ... span: span ( 1599 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1600 ) ) ) ) ty ( 209 ) |-> monoItemFn ( ... name: symbol ( " as core::iter::IntoIterator>::into_iter" ) , id: defId ( 32 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 483 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 482 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 71 ) , span: span ( 484 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 485 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 485 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 486 ) ) ) ) ty ( 200 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::is_signer" ) , id: defId ( 53 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 988 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 988 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 988 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionUnreachable ) , span: span ( 988 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 990 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 107 ) ) ) ) ) ) , span: span ( 991 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 989 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 992 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 993 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 993 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 988 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 993 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 994 ) ) ) ) ty ( 206 ) |-> monoItemFn ( ... name: symbol ( "core::ptr::mut_ptr::::add" ) , id: defId ( 40 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 583 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 582 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 132 ) , span: span ( 584 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 585 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 586 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 585 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 586 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 587 ) ) ) ) ty ( 214 ) |-> monoItemFn ( ... name: symbol ( "core::mem::MaybeUninit::::assume_init_ref" ) , id: defId ( 35 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 540 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 120 ) , id: mirConstId ( 51 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 541 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 543 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 544 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 545 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 121 ) ) ) , span: span ( 546 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 544 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 3 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 547 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 548 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 542 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 62 ) , span: span ( 549 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 122 ) , span: span ( 550 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 541 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 121 ) , span: span ( 543 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 123 ) , span: span ( 551 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 550 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 552 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 553 ) ) ) ) ty ( 215 ) |-> monoItemFn ( ... name: symbol ( "::clone" ) , id: defId ( 95 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 1621 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1622 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 56 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1623 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1620 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 124 ) , span: span ( 1624 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1625 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1622 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 283 ) , span: span ( 1621 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1625 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1626 ) ) ) ) ty ( 212 ) |-> monoItemFn ( ... name: symbol ( "core::mem::size_of::" ) , id: defId ( 39 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 50 ) ) ) , span: span ( 1 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 579 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 580 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 581 ) ) ) ) ty ( 213 ) |-> monoItemFn ( ... name: symbol ( "core::mem::MaybeUninit::::write" ) , id: defId ( 36 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 556 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 557 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 37 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 124 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 558 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 38 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 124 ) ) .GenericArgs , noUserTypeAnnotationIndex , someFieldIdx ( fieldIdx ( 1 ) ) ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 559 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 560 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 561 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 562 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 554 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 120 ) , id: mirConstId ( 51 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 555 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 564 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 565 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 566 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 125 ) ) ) , span: span ( 567 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 565 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 568 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 569 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 563 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 126 ) , span: span ( 570 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 127 ) , span: span ( 571 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 124 ) , span: span ( 572 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 128 ) , span: span ( 556 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 129 ) , span: span ( 557 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 555 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 125 ) , span: span ( 564 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 130 ) , span: span ( 573 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 571 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 572 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 574 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "value" ) , sourceInfo: sourceInfo ( ... span: span ( 575 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 576 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 577 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 578 ) ) ) ) ty ( 210 ) |-> monoItemFn ( ... name: symbol ( "core::iter::range::>::next" ) , id: defId ( 106 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1715 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 290 ) , id: mirConstId ( 206 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1716 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1717 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 73 ) , span: span ( 1718 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 220 ) , span: span ( 1719 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1719 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1720 ) ) ) ) ty ( 211 ) |-> monoItemFn ( ... name: symbol ( "core::ptr::const_ptr::::align_offset" ) , id: defId ( 103 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 311 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 306 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 84 ) , id: mirConstId ( 25 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionUnreachable ) , span: span ( 307 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1683 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1681 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 288 ) , id: mirConstId ( 203 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1682 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1683 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1686 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 1687 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 9 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 204 ) ) ) ) , ty ( 90 ) ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 340 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 91 ) , id: mirConstId ( 30 ) ) ) ) , ty ( 92 ) ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 22 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 93 ) , id: mirConstId ( 31 ) ) ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 341 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 342 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 342 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1684 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 88 ) , id: mirConstId ( 28 ) ) ) ) , args: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 1685 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1688 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 1 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 1683 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 1689 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1690 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1691 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 72 ) , span: span ( 1685 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 95 ) , span: span ( 1686 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 311 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 90 ) , span: span ( 338 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 92 ) , span: span ( 340 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1690 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 1691 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "ret" ) , sourceInfo: sourceInfo ( ... span: span ( 1692 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 0 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 361 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 362 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "pieces" ) , sourceInfo: sourceInfo ( ... span: span ( 363 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1687 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 9 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 204 ) ) ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1693 ) ) ) ) ty ( 216 ) |-> monoItemFn ( ... name: symbol ( "core::mem::size_of::" ) , id: defId ( 39 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 131 ) ) ) , span: span ( 1 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 579 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 580 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 581 ) ) ) ) ty ( 217 ) |-> monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts::<'_, u8>" ) , id: defId ( 71 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1281 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 6 ) ) ) , span: span ( 180 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1281 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1284 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 94 ) ) ) , span: span ( 1284 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1285 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 0 ) ) ) , span: span ( 1 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1286 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 0 ) ) ) , span: span ( 1287 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1282 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 248 ) , id: mirConstId ( 155 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1283 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1289 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1289 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1289 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1288 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1291 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1292 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindRawPtr ( ty ( 249 ) , mutabilityNot ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1293 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 8 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1294 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1295 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1290 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 81 ) , span: span ( 1296 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1297 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1298 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1281 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 1283 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 94 ) , span: span ( 1284 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1285 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1286 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 82 ) , span: span ( 1292 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1297 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1298 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1299 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1300 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data_pointer" ) , sourceInfo: sourceInfo ( ... span: span ( 1301 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "metadata" ) , sourceInfo: sourceInfo ( ... span: span ( 1302 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1303 ) ) ) ) ty ( 238 ) |-> monoItemFn ( ... name: symbol ( "core::slice::]>::as_ptr" ) , id: defId ( 42 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 287 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 265 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 123 ) ) ) , span: span ( 597 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 598 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 596 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 123 ) , span: span ( 599 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 135 ) , span: span ( 291 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 136 ) , span: span ( 287 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 291 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 600 ) ) ) ) ty ( 239 ) |-> monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts::<'_, pinocchio::account_info::AccountInfo>" ) , id: defId ( 71 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1281 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 6 ) ) ) , span: span ( 180 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1281 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1284 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 94 ) ) ) , span: span ( 1284 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1285 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 124 ) ) ) , span: span ( 1 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1286 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 124 ) ) ) , span: span ( 1287 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1282 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 248 ) , id: mirConstId ( 155 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1283 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1289 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1289 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1289 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1288 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1291 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1292 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindRawPtr ( ty ( 250 ) , mutabilityNot ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1293 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 8 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1294 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1295 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1290 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 65 ) , span: span ( 1296 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1297 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1298 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1281 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 1283 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 94 ) , span: span ( 1284 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1285 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1286 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 251 ) , span: span ( 1292 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1297 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1298 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1299 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1300 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data_pointer" ) , sourceInfo: sourceInfo ( ... span: span ( 1301 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "metadata" ) , sourceInfo: sourceInfo ( ... span: span ( 1302 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1303 ) ) ) ) ty ( 234 ) |-> monoItemFn ( ... name: symbol ( "core::result::Result::<&mut spl_token_interface::state::account::Account, pinocchio::program_error::ProgramError>::and_then::<&mut spl_token_interface::state::account::Account, {closure@p-token/src/spl_token_interface/mod.rs:1513:23: 1513:34}>" ) , id: defId ( 6 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 127 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 126 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 127 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 129 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 130 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 128 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) ) , span: span ( 133 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 132 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 132 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 131 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 30 ) , id: mirConstId ( 11 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 132 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 134 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 134 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 134 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 135 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 31 ) , span: span ( 136 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 31 ) , span: span ( 137 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 32 ) , span: span ( 138 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 139 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 133 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 32 ) , span: span ( 131 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 33 ) , span: span ( 132 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 129 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 137 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 138 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 133 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 129 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 140 ) ) ) ) ty ( 235 ) |-> monoItemFn ( ... name: symbol ( "core::slice::::as_mut_ptr" ) , id: defId ( 41 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 589 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 590 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 132 ) ) ) , span: span ( 591 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 592 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 588 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 132 ) , span: span ( 593 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 594 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 134 ) , span: span ( 589 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 594 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 595 ) ) ) ) ty ( 237 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::entrypoint::deserialize::<'_, 128>" ) , id: defId ( 55 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1003 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1003 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1004 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1001 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1002 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 207 ) ) ) , span: span ( 1006 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 140 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 141 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 140 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 142 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 50 ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 143 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 142 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1005 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 144 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 143 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 145 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 144 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1005 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1005 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 145 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 142 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 64 ) , unwind: unwindActionUnreachable ) , span: span ( 1005 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1007 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 10 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 3 ) , unwind: unwindActionContinue ) , span: span ( 1007 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 10 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1007 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGt , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1009 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1008 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 48 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 1008 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1010 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 208 ) , id: mirConstId ( 118 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1011 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x80\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 119 ) ) ) ) .Operands , destination: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 5 ) ) , unwind: unwindActionContinue ) , span: span ( 1012 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 50 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 1014 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1015 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1013 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 209 ) , id: mirConstId ( 120 ) ) ) ) , args: operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 6 ) ) , unwind: unwindActionContinue ) , span: span ( 1013 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1013 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1016 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) , span: span ( 1013 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1013 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 210 ) , id: mirConstId ( 121 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 1013 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) ) , span: span ( 1013 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 11 ) ) branch ( 1 , basicBlockIdx ( 10 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 1013 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 17 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1019 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1020 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1017 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 12 ) ) , unwind: unwindActionContinue ) , span: span ( 1018 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 57 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 50 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1022 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1021 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 209 ) , id: mirConstId ( 120 ) ) ) ) , args: operandMove ( place ( ... local: local ( 57 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 56 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 30 ) ) , unwind: unwindActionContinue ) , span: span ( 1021 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , ty ( 205 ) ) ) , span: span ( 1024 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 134 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 135 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 134 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 136 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 137 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 136 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1023 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 138 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 135 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 137 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 139 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 138 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1023 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1023 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 139 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 136 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 135 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 63 ) , unwind: unwindActionUnreachable ) , span: span ( 1023 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 128 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 129 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 128 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 130 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 131 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 130 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1025 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 132 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 129 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 131 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 133 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 132 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1025 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1025 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 133 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 130 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 129 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 62 ) , unwind: unwindActionUnreachable ) , span: span ( 1025 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1026 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 27 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 15 ) , unwind: unwindActionContinue ) , span: span ( 1026 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 27 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1026 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 122 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 123 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 122 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 124 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 125 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 124 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1027 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 126 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 123 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 125 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 127 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 126 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1027 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1027 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 127 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 124 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 123 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 61 ) , unwind: unwindActionUnreachable ) , span: span ( 1027 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 30 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1030 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 31 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1028 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00(\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 122 ) ) ) ) ) ) , span: span ( 1029 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 31 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1028 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00(\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 122 ) ) ) ) ) , target: basicBlockIdx ( 17 ) , unwind: unwindActionContinue ) , span: span ( 1029 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 31 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1029 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 34 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1034 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 33 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerWithExposedProvenance , operandMove ( place ( ... local: local ( 34 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 1035 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1031 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 211 ) , id: mirConstId ( 123 ) ) ) ) , args: operandMove ( place ( ... local: local ( 33 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1032 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) .Operands , destination: place ( ... local: local ( 32 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 18 ) ) , unwind: unwindActionContinue ) , span: span ( 1033 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 35 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1036 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 35 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 19 ) , unwind: unwindActionContinue ) , span: span ( 1036 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 35 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1036 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1037 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 36 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 20 ) ) , unwind: unwindActionContinue ) , span: span ( 1038 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 37 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1039 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 37 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 21 ) , unwind: unwindActionContinue ) , span: span ( 1039 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 37 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1039 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 40 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1040 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 41 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 40 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1040 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 41 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 40 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 22 ) , unwind: unwindActionContinue ) , span: span ( 1040 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 39 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindTwoPhaseBorrow ) , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemIndex ( local ( 20 ) ) .ProjectionElems ) ) ) , span: span ( 1040 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 42 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 56 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1043 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1041 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 213 ) , id: mirConstId ( 125 ) ) ) ) , args: operandMove ( place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 42 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 38 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 7 ) ) , unwind: unwindActionContinue ) , span: span ( 1042 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1044 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 43 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 24 ) ) , unwind: unwindActionContinue ) , span: span ( 1045 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 44 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1046 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 44 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 25 ) , unwind: unwindActionContinue ) , span: span ( 1046 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 44 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1046 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 47 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1047 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 48 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 47 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1047 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 48 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 47 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 26 ) , unwind: unwindActionContinue ) , span: span ( 1047 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 46 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindTwoPhaseBorrow ) , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemIndex ( local ( 20 ) ) .ProjectionElems ) ) ) , span: span ( 1047 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 116 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 117 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 116 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 118 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 119 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1048 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 120 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 117 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 119 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 121 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 120 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1048 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1048 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 121 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 117 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 60 ) , unwind: unwindActionUnreachable ) , span: span ( 1048 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 51 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemIndex ( local ( 52 ) ) .ProjectionElems ) ) ) , span: span ( 1051 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1049 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 214 ) , id: mirConstId ( 126 ) ) ) ) , args: operandMove ( place ( ... local: local ( 51 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 50 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 28 ) ) , unwind: unwindActionContinue ) , span: span ( 1050 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1052 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 215 ) , id: mirConstId ( 127 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 50 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 49 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 29 ) ) , unwind: unwindActionContinue ) , span: span ( 1053 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1054 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 213 ) , id: mirConstId ( 125 ) ) ) ) , args: operandMove ( place ( ... local: local ( 46 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 49 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 45 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 7 ) ) , unwind: unwindActionContinue ) , span: span ( 1055 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 58 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 56 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1021 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 31 ) ) , span: span ( 1056 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 60 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) ) , span: span ( 1021 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1021 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 210 ) , id: mirConstId ( 121 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 60 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 59 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 32 ) ) , unwind: unwindActionContinue ) , span: span ( 1021 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 61 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 59 ) , projection: .ProjectionElems ) ) ) , span: span ( 1021 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 61 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 34 ) ) branch ( 1 , basicBlockIdx ( 33 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 1021 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 64 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1059 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1057 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 64 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 63 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 35 ) ) , unwind: unwindActionContinue ) , span: span ( 1058 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1061 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 49 ) ) , span: span ( 1060 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 62 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 63 ) , projection: .ProjectionElems ) ) , ty ( 205 ) ) ) , span: span ( 1063 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 110 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 111 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 110 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 112 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 113 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 112 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1062 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 114 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 111 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 113 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 115 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 114 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1062 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1062 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 115 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 112 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 111 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 59 ) , unwind: unwindActionUnreachable ) , span: span ( 1062 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1064 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 216 ) , id: mirConstId ( 128 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 67 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 37 ) ) , unwind: unwindActionContinue ) , span: span ( 1065 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 68 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 67 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1066 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 68 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 67 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 38 ) , unwind: unwindActionContinue ) , span: span ( 1066 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 68 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1066 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 104 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 105 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 104 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 106 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 107 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 106 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1067 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 108 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 105 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 107 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 109 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 108 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1067 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1067 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 109 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 106 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 105 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 58 ) , unwind: unwindActionUnreachable ) , span: span ( 1067 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 71 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1070 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 72 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1068 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00(\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 122 ) ) ) ) ) ) , span: span ( 1069 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 72 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1068 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00(\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 122 ) ) ) ) ) , target: basicBlockIdx ( 40 ) , unwind: unwindActionContinue ) , span: span ( 1069 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 72 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1069 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 75 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1074 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 74 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerWithExposedProvenance , operandMove ( place ( ... local: local ( 75 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 1075 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1071 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 211 ) , id: mirConstId ( 123 ) ) ) ) , args: operandMove ( place ( ... local: local ( 74 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1072 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) .Operands , destination: place ( ... local: local ( 73 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 41 ) ) , unwind: unwindActionContinue ) , span: span ( 1073 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 76 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 73 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1076 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 76 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 73 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 42 ) , unwind: unwindActionContinue ) , span: span ( 1076 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 76 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1076 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1077 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 77 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 43 ) ) , unwind: unwindActionContinue ) , span: span ( 1078 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 78 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 77 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1079 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 78 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 77 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 44 ) , unwind: unwindActionContinue ) , span: span ( 1079 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 78 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1079 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 31 ) ) , span: span ( 1080 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1081 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 79 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 46 ) ) , unwind: unwindActionContinue ) , span: span ( 1082 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 80 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1083 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 80 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 47 ) , unwind: unwindActionContinue ) , span: span ( 1083 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 80 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1083 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 31 ) ) , span: span ( 1080 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1084 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1084 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 49 ) ) , span: span ( 1060 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 85 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1087 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1085 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 85 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 84 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 50 ) ) , unwind: unwindActionContinue ) , span: span ( 1086 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 83 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 84 ) , projection: .ProjectionElems ) ) , ty ( 207 ) ) ) , span: span ( 1089 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 98 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 83 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 99 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 98 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 100 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 50 ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 101 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 100 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1088 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 102 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 99 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 101 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 103 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 102 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1088 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1088 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 103 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 100 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 99 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 57 ) , unwind: unwindActionUnreachable ) , span: span ( 1088 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 87 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 86 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1090 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 87 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 86 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 52 ) , unwind: unwindActionContinue ) , span: span ( 1090 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 87 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1090 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 91 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1093 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1091 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 91 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 90 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 53 ) ) , unwind: unwindActionContinue ) , span: span ( 1092 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 89 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 90 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 1092 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1094 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 217 ) , id: mirConstId ( 129 ) ) ) ) , args: operandMove ( place ( ... local: local ( 89 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 88 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 54 ) ) , unwind: unwindActionContinue ) , span: span ( 1095 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 92 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1096 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 92 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 55 ) , unwind: unwindActionContinue ) , span: span ( 1096 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 92 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1096 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 96 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1099 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1097 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 96 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 95 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 56 ) ) , unwind: unwindActionContinue ) , span: span ( 1098 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 94 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 95 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 1101 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 93 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 94 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1102 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 97 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1103 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 93 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 97 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 88 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1104 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1100 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 82 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 83 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 81 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 82 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1107 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1105 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 86 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 51 ) ) , unwind: unwindActionContinue ) , span: span ( 1106 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 70 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 62 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 8 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 69 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 70 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1108 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 71 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 69 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1070 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 71 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 69 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 39 ) , unwind: unwindActionContinue ) , span: span ( 1070 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 66 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 62 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 65 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 66 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1110 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 130 ) ) ) ) ) ) , span: span ( 1109 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 65 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 45 ) ) .Branches , otherwise: basicBlockIdx ( 36 ) ) ) , span: span ( 1109 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 53 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 52 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 53 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1111 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 54 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1051 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 55 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1051 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 55 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 27 ) , unwind: unwindActionContinue ) , span: span ( 1051 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 29 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 8 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 29 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1112 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 30 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1030 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 30 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 16 ) , unwind: unwindActionContinue ) , span: span ( 1030 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1115 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 107 ) ) ) ) ) ) , span: span ( 1025 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1113 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 216 ) , id: mirConstId ( 128 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 14 ) ) , unwind: unwindActionContinue ) , span: span ( 1114 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1117 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 130 ) ) ) ) ) ) , span: span ( 1116 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 23 ) ) .Branches , otherwise: basicBlockIdx ( 13 ) ) ) , span: span ( 1116 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1120 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1118 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1119 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 218 ) , span: span ( 1121 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1122 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 219 ) , span: span ( 1123 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1124 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1125 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 207 ) , span: span ( 1006 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1002 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1004 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1119 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1007 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1126 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1008 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1127 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1013 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1015 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1013 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 73 ) , span: span ( 1013 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 220 ) , span: span ( 1013 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 1016 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1019 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1024 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1018 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1020 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1116 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1114 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1026 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1112 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1030 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1029 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1033 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1035 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1034 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1036 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1038 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1039 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 126 ) , span: span ( 1042 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 127 ) , span: span ( 1040 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1040 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1040 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 124 ) , span: span ( 1043 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1045 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1046 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 126 ) , span: span ( 1055 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 127 ) , span: span ( 1047 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1047 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1047 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 124 ) , span: span ( 1053 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1050 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 122 ) , span: span ( 1051 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1111 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1051 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1051 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1021 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1022 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1021 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 73 ) , span: span ( 1021 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 220 ) , span: span ( 1021 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 1056 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1063 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1058 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1059 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1109 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1065 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1066 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1108 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1070 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1069 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1073 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1075 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1074 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1076 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1078 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1079 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1082 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1083 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1128 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 207 ) , span: span ( 1089 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1086 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1087 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1106 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1090 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1129 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1092 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1092 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1093 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1096 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1102 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1101 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1098 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1099 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1103 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1005 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "input" ) , sourceInfo: sourceInfo ( ... span: span ( 1122 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 1123 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "offset" ) , sourceInfo: sourceInfo ( ... span: span ( 1124 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "total_accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 1125 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "processed" ) , sourceInfo: sourceInfo ( ... span: span ( 1126 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "processed" ) , sourceInfo: sourceInfo ( ... span: span ( 1127 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 1013 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "i" ) , sourceInfo: sourceInfo ( ... span: span ( 1019 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 1130 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 1021 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 1131 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "instruction_data_len" ) , sourceInfo: sourceInfo ( ... span: span ( 1128 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 1129 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 88 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "program_id" ) , sourceInfo: sourceInfo ( ... span: span ( 1132 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 93 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1133 ) ) ) ) ty ( 230 ) |-> monoItemFn ( ... name: symbol ( "core::slice::::as_ptr" ) , id: defId ( 42 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 287 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 265 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 597 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 598 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 596 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 5 ) , span: span ( 599 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 291 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 82 ) , span: span ( 287 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 291 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 600 ) ) ) ) ty ( 252 ) |-> monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts_mut::precondition_check" ) , id: defId ( 23 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 369 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 370 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 370 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 310 ) ) statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 311 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 306 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 84 ) , id: mirConstId ( 25 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 10 ) ) , unwind: unwindActionUnreachable ) , span: span ( 307 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 371 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 372 ) ) statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 372 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 315 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 316 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 312 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 11 ) ) .Branches , otherwise: basicBlockIdx ( 12 ) ) ) , span: span ( 312 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 374 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 374 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 373 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 371 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 375 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 86 ) , id: mirConstId ( 26 ) ) ) ) , args: operandConstant ( constOperand ( ... span: span ( 376 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\xa6\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 3 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 87 ) , id: mirConstId ( 34 ) ) ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionUnreachable ) , span: span ( 377 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 322 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 323 ) ) statement ( ... kind: statementKindStorageLive ( local ( 18 ) ) , span: span ( 324 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 325 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 326 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 327 ) ) statement ( ... kind: statementKindStorageDead ( local ( 18 ) ) , span: span ( 324 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 328 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 329 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 310 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 369 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 322 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 310 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 369 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 330 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 331 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 332 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 333 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 332 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 331 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 334 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 7 ) ) ) , span: span ( 322 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 330 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 337 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 339 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 29 ) ) ) ) , ty ( 90 ) ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 340 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 91 ) , id: mirConstId ( 30 ) ) ) ) , ty ( 92 ) ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 22 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 93 ) , id: mirConstId ( 31 ) ) ) ) operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 341 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 342 ) ) statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 342 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 335 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 88 ) , id: mirConstId ( 28 ) ) ) ) , args: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionTerminate ) , span: span ( 336 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 330 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 344 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 344 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 14 ) ) , span: span ( 343 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , expected: false , msg: assertMessageDivisionByZero ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\x7f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 32 ) ) ) ) ) , target: basicBlockIdx ( 13 ) , unwind: unwindActionTerminate ) , span: span ( 345 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpDiv , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\x7f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 32 ) ) ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 345 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 14 ) ) , span: span ( 343 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 346 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 346 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLe , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 347 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 348 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 349 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 372 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 372 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 378 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 94 ) , span: span ( 379 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 379 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 379 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 379 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 369 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 370 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 372 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 377 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 323 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 336 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 95 ) , span: span ( 337 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 331 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 352 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 332 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 311 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 90 ) , span: span ( 338 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 92 ) , span: span ( 340 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 353 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 315 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 312 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 346 ) , mut: mutabilityMut ) .LocalDecls , argCount: 4 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 379 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "size" ) , sourceInfo: sourceInfo ( ... span: span ( 379 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 379 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 379 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 4 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 354 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 355 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "is_zst" ) , sourceInfo: sourceInfo ( ... span: span ( 356 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 380 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "is_zst" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 380 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 359 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 360 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 361 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 362 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "pieces" ) , sourceInfo: sourceInfo ( ... span: span ( 363 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 339 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 29 ) ) ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 364 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 353 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 365 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 13 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "size" ) , sourceInfo: sourceInfo ( ... span: span ( 366 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 367 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "max_len" ) , sourceInfo: sourceInfo ( ... span: span ( 315 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 381 ) ) ) ) ty ( 256 ) |-> monoItemFn ( ... name: symbol ( ">::spec_ne" ) , id: defId ( 81 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1412 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1405 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 104 ) ) ) , span: span ( 1405 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 257 ) , id: mirConstId ( 163 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1407 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1414 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1415 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1413 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1416 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1417 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1418 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1412 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1405 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 1417 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1418 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 1409 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1410 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1419 ) ) ) ) ty ( 255 ) |-> monoItemFn ( ... name: symbol ( ">::spec_eq" ) , id: defId ( 80 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1405 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 104 ) ) ) , span: span ( 1405 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 257 ) , id: mirConstId ( 163 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1407 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1406 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1408 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1409 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1410 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1405 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 1409 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1410 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1411 ) ) ) ) ty ( 139 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 45 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 45 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 45 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 46 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 47 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 45 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ty ( 138 ) |-> monoItemFn ( ... name: symbol ( "core::option::Option::<(&u8, &[u8])>::ok_or::" ) , id: defId ( 29 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 425 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) branch ( 1 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 424 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 425 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 427 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 427 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 45 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 280 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 426 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 426 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 45 ) ) .ProjectionElems ) ) ) ) , span: span ( 272 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 45 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 273 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 4 ) , unwind: unwindActionContinue ) , span: span ( 428 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 429 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 47 ) , span: span ( 430 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 101 ) , span: span ( 292 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 293 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 431 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 45 ) , span: span ( 272 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 427 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 292 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "err" ) , sourceInfo: sourceInfo ( ... span: span ( 293 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 272 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 432 ) ) ) ) ty ( 137 ) |-> monoItemFn ( ... name: symbol ( "core::slice::::split_first" ) , id: defId ( 104 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1694 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGe , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1694 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1694 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 0 , minLength: 1 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 1696 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemSubslice ( ... from: 1 , to: 0 , fromEnd: true ) .ProjectionElems ) ) ) , span: span ( 1697 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1698 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1698 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 45 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1699 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1700 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1695 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 45 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1701 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1695 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1702 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 101 ) , span: span ( 1703 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1704 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1694 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1694 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 140 ) , span: span ( 1696 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1697 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 45 ) , span: span ( 1698 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1704 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "first" ) , sourceInfo: sourceInfo ( ... span: span ( 1696 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "tail" ) , sourceInfo: sourceInfo ( ... span: span ( 1697 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1705 ) ) ) ) ty ( 179 ) |-> monoItemFn ( ... name: symbol ( "processor::check_account_owner" ) , id: defId ( 48 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 889 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 5 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 106 ) , id: mirConstId ( 100 ) ) ) ) ) ) , span: span ( 889 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 887 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 187 ) , id: mirConstId ( 99 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 888 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 888 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 890 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 169 ) , id: mirConstId ( 82 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 890 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 890 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 6 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 892 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 893 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 891 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) .Operands ) ) , span: span ( 894 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 891 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 895 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 896 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 897 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 890 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 889 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 888 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 888 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 892 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 897 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 898 ) ) ) ) ty ( 178 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::clear_delegate" ) , id: defId ( 59 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1150 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 64 ) ) ) ) ) ) , span: span ( 1149 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1149 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 1149 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 222 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 223 ) ) projectionElemIndex ( local ( 2 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1152 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 107 ) ) ) ) ) ) , span: span ( 1153 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1151 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1154 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 1155 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1150 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1149 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1149 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1155 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1156 ) ) ) ) ty ( 177 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::set_delegated_amount" ) , id: defId ( 62 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1176 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 221 ) , id: mirConstId ( 131 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1177 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 7 ) , ty ( 19 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1179 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1178 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1180 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 1181 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1182 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1177 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1181 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "amount" ) , sourceInfo: sourceInfo ( ... span: span ( 1182 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1183 ) ) ) ) ty ( 176 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::delegated_amount" ) , id: defId ( 63 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 7 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 1186 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1184 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 147 ) , id: mirConstId ( 62 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1185 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1187 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1188 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1189 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1186 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1189 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1190 ) ) ) ) ty ( 175 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 13 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 13 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 13 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 48 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ty ( 174 ) |-> monoItemFn ( ... name: symbol ( "processor::validate_owner" ) , id: defId ( 49 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 901 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 899 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 900 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) , span: span ( 900 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 902 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 169 ) , id: mirConstId ( 82 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 902 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 902 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 4 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 905 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 903 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 904 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 906 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 907 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 188 ) , id: mirConstId ( 101 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 6 ) ) , unwind: unwindActionContinue ) , span: span ( 908 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 910 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"c\x01\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 102 ) ) ) ) ) ) , span: span ( 909 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 41 ) ) .Branches , otherwise: basicBlockIdx ( 7 ) ) ) , span: span ( 909 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 911 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 187 ) , id: mirConstId ( 99 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 912 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) , span: span ( 912 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 914 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 6 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 106 ) , id: mirConstId ( 103 ) ) ) ) ) ) , span: span ( 914 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 913 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 103 ) , id: mirConstId ( 42 ) ) ) ) , args: operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 913 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 41 ) ) .Branches , otherwise: basicBlockIdx ( 10 ) ) ) , span: span ( 913 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 915 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 163 ) , id: mirConstId ( 77 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 11 ) ) , unwind: unwindActionContinue ) , span: span ( 916 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 917 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 189 ) , id: mirConstId ( 104 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 12 ) ) , unwind: unwindActionContinue ) , span: span ( 918 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 919 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 190 ) , id: mirConstId ( 105 ) ) ) ) , args: operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 13 ) ) , unwind: unwindActionContinue ) , span: span ( 919 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) , span: span ( 919 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 15 ) ) branch ( 1 , basicBlockIdx ( 16 ) ) .Branches , otherwise: basicBlockIdx ( 14 ) ) ) , span: span ( 919 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 16 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 34 ) ) .ProjectionElems ) ) ) ) , span: span ( 922 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 923 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 107 ) ) ) ) ) ) , span: span ( 923 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueRepeat ( operandConstant ( constOperand ( ... span: span ( 924 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) , span: span ( 925 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 920 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 191 ) , id: mirConstId ( 106 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 17 ) ) , unwind: unwindActionContinue ) , span: span ( 921 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 16 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 926 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 926 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 45 ) ) , unwind: unwindActionContinue ) , span: span ( 919 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 927 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 192 ) , id: mirConstId ( 108 ) ) ) ) , args: operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 18 ) ) , unwind: unwindActionContinue ) , span: span ( 927 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 927 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 928 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) ) , span: span ( 927 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 927 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 193 ) , id: mirConstId ( 109 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 20 ) ) , unwind: unwindActionContinue ) , span: span ( 927 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 29 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) ) , span: span ( 927 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 29 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 22 ) ) branch ( 1 , basicBlockIdx ( 21 ) ) .Branches , otherwise: basicBlockIdx ( 14 ) ) ) , span: span ( 927 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 30 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 27 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 930 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 35 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 195 ) ) .ProjectionElems ) ) ) , span: span ( 931 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 38 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 932 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 37 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 38 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 933 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 36 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 50 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 934 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) operandMove ( place ( ... local: local ( 37 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 935 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 929 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 194 ) , id: mirConstId ( 110 ) ) ) ) , args: operandMove ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 34 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 23 ) ) , unwind: unwindActionContinue ) , span: span ( 929 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 58 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 937 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 59 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 938 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 57 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandMove ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 59 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 936 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 57 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 44 ) ) .Branches , otherwise: basicBlockIdx ( 40 ) ) ) , span: span ( 936 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 939 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 196 ) , id: mirConstId ( 111 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 34 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 33 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 24 ) ) , unwind: unwindActionContinue ) , span: span ( 940 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 941 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 197 ) , id: mirConstId ( 112 ) ) ) ) , args: operandMove ( place ( ... local: local ( 33 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 32 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 25 ) ) , unwind: unwindActionContinue ) , span: span ( 942 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 943 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 198 ) , id: mirConstId ( 113 ) ) ) ) , args: operandMove ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 31 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 26 ) ) , unwind: unwindActionContinue ) , span: span ( 943 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 39 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 31 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 943 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 27 ) ) , span: span ( 944 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 41 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) ) , span: span ( 943 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 943 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 199 ) , id: mirConstId ( 114 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 41 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 40 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 28 ) ) , unwind: unwindActionContinue ) , span: span ( 943 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 42 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 40 ) , projection: .ProjectionElems ) ) ) , span: span ( 943 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 42 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 19 ) ) branch ( 1 , basicBlockIdx ( 29 ) ) .Branches , otherwise: basicBlockIdx ( 14 ) ) ) , span: span ( 943 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 43 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 40 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 109 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 947 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 44 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 40 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 109 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 104 ) ) .ProjectionElems ) ) ) ) , span: span ( 948 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 46 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 44 ) , projection: .ProjectionElems ) ) ) , span: span ( 949 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 945 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 48 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 30 ) ) , unwind: unwindActionContinue ) , span: span ( 946 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 47 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 48 ) , projection: .ProjectionElems ) ) ) , span: span ( 946 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 950 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 103 ) , id: mirConstId ( 42 ) ) ) ) , args: operandMove ( place ( ... local: local ( 46 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 47 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 45 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 31 ) ) , unwind: unwindActionContinue ) , span: span ( 950 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 45 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 27 ) ) .Branches , otherwise: basicBlockIdx ( 32 ) ) ) , span: span ( 950 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 50 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 115 ) ) ) ) ) ) , span: span ( 951 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 51 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 50 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 951 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 51 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 50 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 33 ) , unwind: unwindActionContinue ) , span: span ( 951 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 49 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 23 ) , projection: projectionElemIndex ( local ( 43 ) ) .ProjectionElems ) ) ) ) , span: span ( 951 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 49 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 34 ) ) .Branches , otherwise: basicBlockIdx ( 27 ) ) ) , span: span ( 951 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 952 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 200 ) , id: mirConstId ( 116 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 52 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 35 ) ) , unwind: unwindActionContinue ) , span: span ( 953 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 37 ) ) .Branches , otherwise: basicBlockIdx ( 36 ) ) ) , span: span ( 953 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 54 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 115 ) ) ) ) ) ) , span: span ( 954 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 55 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 954 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 55 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 38 ) , unwind: unwindActionContinue ) , span: span ( 954 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 53 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 7 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 955 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 53 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 956 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: projectionElemIndex ( local ( 43 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 959 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 41 ) ) ) ) ) ) , span: span ( 960 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 56 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 957 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) ) , span: span ( 958 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 56 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 957 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) , target: basicBlockIdx ( 39 ) , unwind: unwindActionContinue ) , span: span ( 958 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 56 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 958 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 27 ) ) , span: span ( 961 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 60 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 7 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 962 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 60 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 963 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 964 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 200 ) , id: mirConstId ( 116 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 61 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 42 ) ) , unwind: unwindActionContinue ) , span: span ( 965 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 61 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 43 ) ) .Branches , otherwise: basicBlockIdx ( 44 ) ) ) , span: span ( 965 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 62 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 7 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 966 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 967 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) .Operands ) ) , span: span ( 969 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 968 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 968 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 970 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 971 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 972 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 973 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 902 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 901 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 900 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 900 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 904 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 905 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 909 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 908 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 913 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 912 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 912 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 914 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 49 ) , span: span ( 919 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 36 ) , span: span ( 918 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 916 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 926 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 926 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 34 ) , span: span ( 922 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 974 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 201 ) , span: span ( 975 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 64 ) , span: span ( 927 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 64 ) , span: span ( 921 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 64 ) , span: span ( 927 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 202 ) , span: span ( 927 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 203 ) , span: span ( 927 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 928 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 930 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 117 ) , span: span ( 943 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 117 ) , span: span ( 942 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 108 ) , span: span ( 940 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 70 ) , span: span ( 929 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 76 ) , span: span ( 931 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 935 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 933 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 932 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 117 ) , span: span ( 943 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 111 ) , span: span ( 943 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 112 ) , span: span ( 943 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 944 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 947 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 948 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 950 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 949 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 946 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 946 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 951 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 951 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 951 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 953 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 955 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 954 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 954 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 204 ) , span: span ( 958 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 936 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 937 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 938 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 962 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 965 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 966 ) , mut: mutabilityMut ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "expected_owner" ) , sourceInfo: sourceInfo ( ... span: span ( 971 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "owner_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 972 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "signers" ) , sourceInfo: sourceInfo ( ... span: span ( 973 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "multisig" ) , sourceInfo: sourceInfo ( ... span: span ( 976 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 926 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 922 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "num_signers" ) , sourceInfo: sourceInfo ( ... span: span ( 974 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "matched" ) , sourceInfo: sourceInfo ( ... span: span ( 975 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 927 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "signer" ) , sourceInfo: sourceInfo ( ... span: span ( 930 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 943 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "position" ) , sourceInfo: sourceInfo ( ... span: span ( 947 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "key" ) , sourceInfo: sourceInfo ( ... span: span ( 948 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 44 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 977 ) ) ) ) ty ( 173 ) |-> monoItemFn ( ... name: symbol ( " as core::cmp::PartialEq>::eq" ) , id: defId ( 30 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 434 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 433 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 434 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 434 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) branch ( 1 , basicBlockIdx ( 7 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 433 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 434 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) branch ( 1 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 433 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 435 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 41 ) ) ) ) ) ) , span: span ( 435 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 8 ) ) , span: span ( 435 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 436 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) ) ) , span: span ( 436 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 8 ) ) , span: span ( 436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 437 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) ) ) , span: span ( 437 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 8 ) ) , span: span ( 437 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 104 ) ) .ProjectionElems ) ) ) , span: span ( 439 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 104 ) ) .ProjectionElems ) ) ) , span: span ( 440 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 438 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 103 ) , id: mirConstId ( 42 ) ) ) ) , args: operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 438 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 441 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 442 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 105 ) , span: span ( 443 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 105 ) , span: span ( 444 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 445 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 446 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 447 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 439 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 440 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 443 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 444 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "l" ) , sourceInfo: sourceInfo ( ... span: span ( 439 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 440 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 448 ) ) ) ) ty ( 172 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::delegate" ) , id: defId ( 60 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1158 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1158 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 64 ) ) ) ) ) ) , span: span ( 1157 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1157 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 1157 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 222 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 223 ) ) projectionElemIndex ( local ( 3 ) ) .ProjectionElems ) ) ) ) , span: span ( 1157 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 1159 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 222 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 1161 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1162 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1160 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1163 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1160 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1164 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 114 ) , span: span ( 1165 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1166 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1157 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1158 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1157 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1157 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1161 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1166 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1167 ) ) ) ) ty ( 171 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 39 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 39 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 39 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 55 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 41 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ty ( 170 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::" ) , id: defId ( 65 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1198 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 228 ) , id: mirConstId ( 139 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1199 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1200 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 229 ) , id: mirConstId ( 140 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 42 ) , id: mirConstId ( 141 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1201 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1202 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 41 ) , span: span ( 1203 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1204 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 41 ) , span: span ( 1199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1204 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1205 ) ) ) ) ty ( 169 ) |-> monoItemFn ( ... name: symbol ( "core::cmp::impls::::ne" ) , id: defId ( 101 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1673 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1674 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1671 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 166 ) , id: mirConstId ( 80 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1672 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1675 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1676 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 1677 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 1678 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1677 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1678 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1677 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1678 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1679 ) ) ) ) ty ( 168 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::key" ) , id: defId ( 51 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 979 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 5 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 979 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 978 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 104 ) , span: span ( 980 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 981 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 981 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 981 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 982 ) ) ) ) ty ( 165 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 24 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 24 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 24 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 54 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 26 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ty ( 164 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::" ) , id: defId ( 65 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1198 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 226 ) , id: mirConstId ( 136 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1199 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1200 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 227 ) , id: mirConstId ( 137 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 27 ) , id: mirConstId ( 138 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1201 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1202 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 26 ) , span: span ( 1203 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1204 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 26 ) , span: span ( 1199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1204 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1205 ) ) ) ) ty ( 161 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 12 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 12 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 15 ) ) genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 15 ) ) genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 51 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 12 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 15 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ty ( 166 ) |-> monoItemFn ( ... name: symbol ( "core::array::equality::::ne" ) , id: defId ( 79 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1396 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 256 ) , id: mirConstId ( 162 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1397 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1398 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1399 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1400 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1401 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1400 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1401 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1402 ) ) ) ) ty ( 163 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::borrow_data_unchecked" ) , id: defId ( 98 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1640 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 284 ) , id: mirConstId ( 200 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1641 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 1641 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1642 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 188 ) , id: mirConstId ( 101 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1643 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1644 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 217 ) , id: mirConstId ( 129 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1645 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1646 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 81 ) , span: span ( 1647 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1648 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1641 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1641 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1643 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1648 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1649 ) ) ) ) ty ( 160 ) |-> monoItemFn ( ... name: symbol ( "core::option::Option::::ok_or::" ) , id: defId ( 29 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 425 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) branch ( 1 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 424 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 425 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 427 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 427 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 50 ) ) genericArgKindType ( ty ( 12 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 280 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 426 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 426 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 272 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 50 ) ) genericArgKindType ( ty ( 12 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 273 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 4 ) , unwind: unwindActionContinue ) , span: span ( 428 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 429 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 52 ) , span: span ( 430 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 292 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 12 ) , span: span ( 293 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 431 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 272 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 12 ) , span: span ( 427 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 292 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "err" ) , sourceInfo: sourceInfo ( ... span: span ( 293 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 272 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 432 ) ) ) ) ty ( 162 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::FromResidual>>::from_residual" ) , id: defId ( 3 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 12 ) ) .ProjectionElems ) ) ) ) , span: span ( 102 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 101 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 100 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 11 ) , id: mirConstId ( 7 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 101 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 104 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 105 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 103 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 106 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 107 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 12 ) , span: span ( 102 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 101 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 107 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 102 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 108 ) ) ) ) ty ( 118 ) |-> monoItemFn ( ... name: symbol ( "core::array:: for [u8; 8]>::try_from" ) , id: defId ( 18 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 258 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 259 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 257 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 261 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 261 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 262 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) ) ) , span: span ( 257 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 257 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 262 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 264 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 265 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 77 ) ) ) , span: span ( 266 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 267 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 78 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 268 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 269 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 270 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 78 ) ) .ProjectionElems ) ) ) ) , span: span ( 272 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 78 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 273 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 274 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 78 ) ) .ProjectionElems ) ) ) ) , span: span ( 276 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 11 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 276 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 277 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 263 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 262 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 79 ) , id: mirConstId ( 22 ) ) ) ) ) ) , span: span ( 279 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 270 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 80 ) , id: mirConstId ( 23 ) ) ) ) ) ) , span: span ( 280 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 274 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 10 ) , id: mirConstId ( 6 ) ) ) ) .Operands ) ) , span: span ( 281 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 278 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageDead ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 283 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 282 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 21 ) , span: span ( 284 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 285 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 80 ) , span: span ( 258 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 79 ) , span: span ( 259 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 257 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 261 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 77 ) , span: span ( 264 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 78 ) , span: span ( 286 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 82 ) , span: span ( 287 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 78 ) , span: span ( 272 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 276 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 78 ) , span: span ( 288 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 285 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 289 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 290 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 264 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "me" ) , sourceInfo: sourceInfo ( ... span: span ( 286 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 291 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 292 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "err" ) , sourceInfo: sourceInfo ( ... span: span ( 293 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 10 ) , id: mirConstId ( 6 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 272 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 288 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 276 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 294 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 10 ) , id: mirConstId ( 6 ) ) ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 295 ) ) ) ) ty ( 103 ) |-> monoItemFn ( ... name: symbol ( "core::cmp::impls::::eq" ) , id: defId ( 13 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 194 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 195 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 192 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 287 ) , id: mirConstId ( 202 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 193 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 196 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 197 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 198 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 199 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 198 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 198 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 199 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 200 ) ) ) ) ty ( 107 ) |-> monoItemFn ( ... name: symbol ( " as core::iter::Iterator>::next" ) , id: defId ( 87 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 1460 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1459 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1459 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1462 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1463 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1464 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1461 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1465 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 67 ) ) .ProjectionElems ) ) ) , span: span ( 1466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 265 ) ) ) , span: span ( 1467 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1468 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1469 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1470 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1471 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) ) ) , span: span ( 1471 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 1472 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 1472 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 1474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) ) ) ) , span: span ( 1474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 11 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 1476 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1477 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 1478 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1478 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1461 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 1460 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 114 ) , id: mirConstId ( 166 ) ) ) ) ) ) , span: span ( 1480 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 1479 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 1482 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 1483 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 1484 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) ) ) ) , span: span ( 1485 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1481 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 9 ) ) .Branches , otherwise: basicBlockIdx ( 8 ) ) ) , span: span ( 1481 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 1487 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1486 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 1484 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) ) , span: span ( 1483 ) ) statement ( ... kind: statementKindStorageLive ( local ( 27 ) ) , span: span ( 1488 ) ) statement ( ... kind: statementKindStorageLive ( local ( 26 ) ) , span: span ( 1489 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 15 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) , ty ( 258 ) ) ) , span: span ( 1440 ) ) statement ( ... kind: statementKindStorageDead ( local ( 26 ) ) , span: span ( 1490 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 27 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1491 ) ) statement ( ... kind: statementKindStorageDead ( local ( 27 ) ) , span: span ( 1488 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 1492 ) ) statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 1482 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1493 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 1479 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 1495 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 67 ) ) .ProjectionElems ) ) ) , span: span ( 1495 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , ty ( 266 ) ) ) , span: span ( 1496 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 1497 ) ) statement ( ... kind: statementKindStorageLive ( local ( 18 ) ) , span: span ( 1498 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 1499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 16 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1498 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 1500 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1501 ) ) statement ( ... kind: statementKindStorageDead ( local ( 18 ) ) , span: span ( 1500 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1494 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 1502 ) ) statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 1503 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 67 ) ) .ProjectionElems ) ) ) , span: span ( 1503 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 267 ) ) ) , span: span ( 1496 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 1504 ) ) statement ( ... kind: statementKindStorageLive ( local ( 22 ) ) , span: span ( 1505 ) ) statement ( ... kind: statementKindStorageLive ( local ( 23 ) ) , span: span ( 1506 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) ) ) ) , span: span ( 1506 ) ) statement ( ... kind: statementKindStorageLive ( local ( 24 ) ) , span: span ( 1507 ) ) statement ( ... kind: statementKindStorageLive ( local ( 25 ) ) , span: span ( 1508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 23 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1507 ) ) statement ( ... kind: statementKindStorageDead ( local ( 25 ) ) , span: span ( 1509 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 167 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1510 ) ) statement ( ... kind: statementKindStorageDead ( local ( 24 ) ) , span: span ( 1511 ) ) statement ( ... kind: statementKindStorageDead ( local ( 23 ) ) , span: span ( 1512 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1513 ) ) statement ( ... kind: statementKindStorageDead ( local ( 22 ) ) , span: span ( 1512 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 1514 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1494 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 114 ) , span: span ( 1515 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 115 ) , span: span ( 1516 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1460 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1517 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1462 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1518 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 265 ) , span: span ( 1465 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 268 ) , span: span ( 1466 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 269 ) , span: span ( 1471 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 269 ) , span: span ( 1472 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1519 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1474 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 269 ) , span: span ( 1483 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1483 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 266 ) , span: span ( 1520 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 270 ) , span: span ( 1495 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1498 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1499 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 267 ) , span: span ( 1502 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 270 ) , span: span ( 1503 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1505 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1506 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1507 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1508 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 258 ) , span: span ( 1489 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1475 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1516 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1517 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "end" ) , sourceInfo: sourceInfo ( ... span: span ( 1518 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1521 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1522 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1523 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1524 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "offset" ) , sourceInfo: sourceInfo ( ... span: span ( 1525 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1526 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "old" ) , sourceInfo: sourceInfo ( ... span: span ( 1527 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1528 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "_end" ) , sourceInfo: sourceInfo ( ... span: span ( 1529 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1530 ) , scope: sourceScope ( 16 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1530 ) , scope: sourceScope ( 17 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1531 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 1532 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1526 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1533 ) , scope: sourceScope ( 19 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 20 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1534 ) , scope: sourceScope ( 21 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1535 ) ) ) ) ty ( 100 ) |-> monoItemFn ( ... name: symbol ( "::is_initialized" ) , id: defId ( 24 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 4 ) , ty ( 97 ) ) .ProjectionElems ) ) ) , span: span ( 383 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 384 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 4 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 58 ) , id: mirConstId ( 36 ) ) ) ) ) ) , span: span ( 384 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 382 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 96 ) , id: mirConstId ( 35 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 382 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 385 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 386 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 387 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 58 ) , span: span ( 383 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 58 ) , span: span ( 384 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 387 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 388 ) ) ) ) ty ( 157 ) |-> monoItemFn ( ... name: symbol ( ">::into" ) , id: defId ( 90 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1580 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 11 ) , id: mirConstId ( 7 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1581 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1582 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 8 ) , span: span ( 1583 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 1584 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1584 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1585 ) ) ) ) ty ( 156 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::is_frozen" ) , id: defId ( 64 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 4 ) , ty ( 97 ) ) .ProjectionElems ) ) ) , span: span ( 1192 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1193 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 7 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 58 ) , id: mirConstId ( 132 ) ) ) ) ) ) , span: span ( 1193 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1191 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 57 ) , id: mirConstId ( 14 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1191 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1194 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1195 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1196 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 58 ) , span: span ( 1192 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 58 ) , span: span ( 1193 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1196 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1197 ) ) ) ) ty ( 159 ) |-> monoItemFn ( ... name: symbol ( "core::num::::checked_sub" ) , id: defId ( 74 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1344 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1344 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1344 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 102 ) , id: mirConstId ( 159 ) ) ) ) ) ) , span: span ( 1346 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1345 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1347 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1348 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1349 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1350 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1345 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1352 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1351 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 102 ) , span: span ( 1353 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1354 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1355 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1344 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1347 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1354 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1355 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1356 ) ) ) ) ty ( 158 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::amount" ) , id: defId ( 58 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 2 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 1144 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1142 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 147 ) , id: mirConstId ( 62 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1143 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1145 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1146 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1147 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1144 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1147 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1148 ) ) ) ) ty ( 151 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::borrow_mut_data_unchecked" ) , id: defId ( 99 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1650 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 284 ) , id: mirConstId ( 200 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1651 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1652 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 188 ) , id: mirConstId ( 101 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1653 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1654 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 285 ) , id: mirConstId ( 201 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1655 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1656 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 133 ) , span: span ( 1657 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1658 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1651 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1653 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1658 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1659 ) ) ) ) ty ( 153 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_mut::" ) , id: defId ( 67 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1220 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 181 ) , id: mirConstId ( 94 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1221 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1222 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 234 ) , id: mirConstId ( 145 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 32 ) , id: mirConstId ( 146 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1223 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1224 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 31 ) , span: span ( 1225 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 1226 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 31 ) , span: span ( 1221 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1226 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1227 ) ) ) ) ty ( 155 ) |-> monoItemFn ( ... name: symbol ( "core::cmp::impls::::eq" ) , id: defId ( 13 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 194 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 195 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 192 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 60 ) , id: mirConstId ( 16 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 193 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 196 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 197 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 61 ) , span: span ( 198 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 61 ) , span: span ( 199 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 198 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 198 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 199 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 200 ) ) ) ) ty ( 154 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 29 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 29 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 53 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 31 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ty ( 143 ) |-> monoItemFn ( ... name: symbol ( "processor::transfer::process_transfer" ) , id: defId ( 45 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 631 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 144 ) , id: mirConstId ( 58 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 632 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 633 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 145 ) , id: mirConstId ( 59 ) ) ) ) , args: operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 9 ) , id: mirConstId ( 60 ) ) ) ) .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 634 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 635 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 146 ) , id: mirConstId ( 61 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 635 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 635 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) branch ( 1 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 635 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 635 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 638 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 636 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 147 ) , id: mirConstId ( 62 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 7 ) ) , unwind: unwindActionContinue ) , span: span ( 637 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 4 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 639 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 639 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 635 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 0 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 642 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 640 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 148 ) , id: mirConstId ( 63 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 641 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 643 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 644 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 645 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 646 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 647 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 56 ) , span: span ( 635 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 20 ) , span: span ( 634 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 21 ) , span: span ( 632 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 639 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 639 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 638 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 149 ) , span: span ( 642 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 645 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 646 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "amount" ) , sourceInfo: sourceInfo ( ... span: span ( 647 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 639 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 638 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 648 ) ) ) ) ty ( 144 ) |-> monoItemFn ( ... name: symbol ( "<&[u8] as core::convert::TryInto<[u8; 8]>>::try_into" ) , id: defId ( 33 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 487 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 118 ) , id: mirConstId ( 45 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 488 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 489 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 21 ) , span: span ( 490 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 491 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 491 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 492 ) ) ) ) ty ( 141 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::FromResidual>>::from_residual" ) , id: defId ( 3 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 102 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 101 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 100 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 16 ) , id: mirConstId ( 8 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 101 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 104 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 105 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 103 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 106 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 107 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 102 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 101 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 107 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 102 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 108 ) ) ) ) ty ( 142 ) |-> monoItemFn ( ... name: symbol ( "entrypoint::process_remaining_instruction" ) , id: defId ( 44 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 2 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 624 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 625 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 623 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 626 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 627 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 628 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 629 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 624 ) , mut: mutabilityMut ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 627 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 628 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "discriminator" ) , sourceInfo: sourceInfo ( ... span: span ( 629 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 630 ) ) ) ) ty ( 147 ) |-> monoItemFn ( ... name: symbol ( "core::num::::from_le_bytes" ) , id: defId ( 76 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 50 ) ) ) , span: span ( 1365 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1364 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1366 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1367 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1367 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1368 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "x" ) , sourceInfo: sourceInfo ( ... span: span ( 1369 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 0 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1370 ) ) ) ) ty ( 148 ) |-> monoItemFn ( ... name: symbol ( "processor::shared::transfer::process_transfer" ) , id: defId ( 46 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , span: span ( 650 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 1 ) ) branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 649 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 652 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 651 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGe , operandMove ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 651 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 64 ) ) ) ) ) ) , span: span ( 651 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 651 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 0 , minLength: 4 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 654 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 1 , minLength: 4 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 655 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 2 , minLength: 4 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 656 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 3 , minLength: 4 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 657 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemSubslice ( ... from: 4 , to: 0 , fromEnd: true ) .ProjectionElems ) ) ) , span: span ( 658 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 659 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 150 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 660 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 661 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 653 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 10 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 662 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 663 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 664 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGe , operandMove ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 664 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 65 ) ) ) ) ) ) , span: span ( 664 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 5 ) ) ) , span: span ( 664 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 0 , minLength: 3 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 665 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 1 , minLength: 3 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 666 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 2 , minLength: 3 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 667 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemSubslice ( ... from: 3 , to: 0 , fromEnd: true ) .ProjectionElems ) ) ) , span: span ( 668 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 29 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 150 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 669 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 29 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 670 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 653 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 10 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 672 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 673 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 671 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 676 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 152 ) ) .ProjectionElems ) ) ) ) , span: span ( 677 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 2 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 678 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 3 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 679 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 4 ) , ty ( 65 ) ) .ProjectionElems ) ) ) ) , span: span ( 680 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 674 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 151 ) , id: mirConstId ( 66 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 32 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 675 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 681 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 153 ) , id: mirConstId ( 67 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 31 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 682 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 683 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 154 ) , id: mirConstId ( 68 ) ) ) ) , args: operandMove ( place ( ... local: local ( 31 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 30 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 10 ) ) , unwind: unwindActionContinue ) , span: span ( 683 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 33 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) ) , span: span ( 683 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 33 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 12 ) ) branch ( 1 , basicBlockIdx ( 13 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 683 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 35 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 30 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) ) , span: span ( 685 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 37 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 686 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 38 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) ) , span: span ( 687 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 684 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 155 ) , id: mirConstId ( 69 ) ) ) ) , args: operandMove ( place ( ... local: local ( 37 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 38 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 36 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 14 ) ) , unwind: unwindActionContinue ) , span: span ( 684 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 34 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 30 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 688 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 688 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 34 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 683 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 26 ) ) .Branches , otherwise: basicBlockIdx ( 15 ) ) ) , span: span ( 689 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 41 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 692 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 690 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 156 ) , id: mirConstId ( 70 ) ) ) ) , args: operandMove ( place ( ... local: local ( 41 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 40 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 16 ) ) , unwind: unwindActionContinue ) , span: span ( 691 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 40 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 19 ) ) .Branches , otherwise: basicBlockIdx ( 17 ) ) ) , span: span ( 691 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 43 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 17 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 695 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 693 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 42 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 18 ) ) , unwind: unwindActionContinue ) , span: span ( 694 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 42 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 696 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 48 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 699 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 697 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 158 ) , id: mirConstId ( 72 ) ) ) ) , args: operandMove ( place ( ... local: local ( 48 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 47 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 20 ) ) , unwind: unwindActionContinue ) , span: span ( 698 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 700 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 159 ) , id: mirConstId ( 73 ) ) ) ) , args: operandMove ( place ( ... local: local ( 47 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 46 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 21 ) ) , unwind: unwindActionContinue ) , span: span ( 701 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 49 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 1 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 704 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 702 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 46 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 49 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 45 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 22 ) ) , unwind: unwindActionContinue ) , span: span ( 703 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 705 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 45 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 44 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 23 ) ) , unwind: unwindActionContinue ) , span: span ( 705 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 50 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 44 ) , projection: .ProjectionElems ) ) ) , span: span ( 705 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 50 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 24 ) ) branch ( 1 , basicBlockIdx ( 25 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 705 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 52 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 44 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 707 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 39 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 707 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 48 ) ) , span: span ( 706 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 51 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 44 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 708 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 708 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 51 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 705 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 709 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 163 ) , id: mirConstId ( 77 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 55 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 27 ) ) , unwind: unwindActionContinue ) , span: span ( 710 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 711 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 164 ) , id: mirConstId ( 78 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 55 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 54 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 28 ) ) , unwind: unwindActionContinue ) , span: span ( 712 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 713 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 165 ) , id: mirConstId ( 79 ) ) ) ) , args: operandMove ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 53 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 29 ) ) , unwind: unwindActionContinue ) , span: span ( 713 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 56 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 53 ) , projection: .ProjectionElems ) ) ) , span: span ( 713 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 56 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 30 ) ) branch ( 1 , basicBlockIdx ( 31 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 713 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 58 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 53 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 24 ) ) .ProjectionElems ) ) ) ) , span: span ( 716 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 60 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 717 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 714 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 156 ) , id: mirConstId ( 70 ) ) ) ) , args: operandMove ( place ( ... local: local ( 60 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 59 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 32 ) ) , unwind: unwindActionContinue ) , span: span ( 715 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 57 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 53 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 718 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 718 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 57 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 713 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 59 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 33 ) ) .Branches , otherwise: basicBlockIdx ( 35 ) ) ) , span: span ( 715 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 719 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 156 ) , id: mirConstId ( 70 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 61 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 34 ) ) , unwind: unwindActionContinue ) , span: span ( 720 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 61 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 37 ) ) .Branches , otherwise: basicBlockIdx ( 35 ) ) ) , span: span ( 720 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 63 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 17 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 723 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 721 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 63 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 62 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 36 ) ) , unwind: unwindActionContinue ) , span: span ( 722 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 724 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 68 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 727 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 725 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 158 ) , id: mirConstId ( 72 ) ) ) ) , args: operandMove ( place ( ... local: local ( 68 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 67 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 38 ) ) , unwind: unwindActionContinue ) , span: span ( 726 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 728 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 159 ) , id: mirConstId ( 73 ) ) ) ) , args: operandMove ( place ( ... local: local ( 67 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 66 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 39 ) ) , unwind: unwindActionContinue ) , span: span ( 729 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 69 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 1 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 732 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 730 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 66 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 69 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 65 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 40 ) ) , unwind: unwindActionContinue ) , span: span ( 731 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 733 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 65 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 64 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 41 ) ) , unwind: unwindActionContinue ) , span: span ( 733 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 70 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 64 ) , projection: .ProjectionElems ) ) ) , span: span ( 733 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 70 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 42 ) ) branch ( 1 , basicBlockIdx ( 43 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 733 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 72 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 64 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 735 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 74 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 736 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 75 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 58 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 737 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 734 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 166 ) , id: mirConstId ( 80 ) ) ) ) , args: operandMove ( place ( ... local: local ( 74 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 75 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 73 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 44 ) ) , unwind: unwindActionContinue ) , span: span ( 734 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 71 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 64 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 738 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 738 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 71 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 733 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 73 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 47 ) ) .Branches , otherwise: basicBlockIdx ( 45 ) ) ) , span: span ( 734 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 77 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 741 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 739 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 77 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 76 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 46 ) ) , unwind: unwindActionContinue ) , span: span ( 740 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 76 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 742 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 39 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 72 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 743 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 48 ) ) , span: span ( 706 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 78 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 745 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 78 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 49 ) ) branch ( 0 , basicBlockIdx ( 62 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 744 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 79 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 150 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 748 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 80 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 150 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 749 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 746 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 83 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 50 ) ) , unwind: unwindActionContinue ) , span: span ( 747 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 82 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 83 ) , projection: .ProjectionElems ) ) ) , span: span ( 747 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 85 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 751 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 84 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 85 ) , projection: .ProjectionElems ) ) ) , span: span ( 751 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 750 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 169 ) , id: mirConstId ( 82 ) ) ) ) , args: operandMove ( place ( ... local: local ( 82 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 84 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 81 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 51 ) ) , unwind: unwindActionContinue ) , span: span ( 750 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 54 ) ) .Branches , otherwise: basicBlockIdx ( 52 ) ) ) , span: span ( 750 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 87 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 754 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 752 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 87 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 86 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 53 ) ) , unwind: unwindActionContinue ) , span: span ( 753 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 86 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 755 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 756 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 163 ) , id: mirConstId ( 77 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 90 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 55 ) ) , unwind: unwindActionContinue ) , span: span ( 757 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 758 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 170 ) , id: mirConstId ( 83 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 90 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 89 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 56 ) ) , unwind: unwindActionContinue ) , span: span ( 759 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 760 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 171 ) , id: mirConstId ( 84 ) ) ) ) , args: operandMove ( place ( ... local: local ( 89 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 88 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 57 ) ) , unwind: unwindActionContinue ) , span: span ( 760 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 91 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 88 ) , projection: .ProjectionElems ) ) ) , span: span ( 760 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 91 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 58 ) ) branch ( 1 , basicBlockIdx ( 59 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 760 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 93 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 88 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 39 ) ) .ProjectionElems ) ) ) ) , span: span ( 762 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 95 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 93 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 2 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 763 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 94 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandCopy ( place ( ... local: local ( 80 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 95 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 761 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 94 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 62 ) ) .Branches , otherwise: basicBlockIdx ( 60 ) ) ) , span: span ( 761 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 92 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 88 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 764 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 764 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 92 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 760 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 97 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 18 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 767 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 765 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 97 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 96 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 61 ) ) , unwind: unwindActionContinue ) , span: span ( 766 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 96 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 768 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 101 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 771 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 769 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 172 ) , id: mirConstId ( 85 ) ) ) ) , args: operandMove ( place ( ... local: local ( 101 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 100 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 63 ) ) , unwind: unwindActionContinue ) , span: span ( 770 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 99 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 100 ) , projection: .ProjectionElems ) ) ) , span: span ( 770 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 772 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 104 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 64 ) ) , unwind: unwindActionContinue ) , span: span ( 773 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 103 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 104 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 775 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 102 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 103 ) , projection: .ProjectionElems ) ) ) , span: span ( 775 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 774 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 173 ) , id: mirConstId ( 86 ) ) ) ) , args: operandMove ( place ( ... local: local ( 99 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 102 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 98 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 65 ) ) , unwind: unwindActionContinue ) , span: span ( 774 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 98 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 81 ) ) .Branches , otherwise: basicBlockIdx ( 66 ) ) ) , span: span ( 774 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 776 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 107 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 67 ) ) , unwind: unwindActionContinue ) , span: span ( 777 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 778 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 174 ) , id: mirConstId ( 87 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 107 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 106 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 68 ) ) , unwind: unwindActionContinue ) , span: span ( 779 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 780 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 175 ) , id: mirConstId ( 88 ) ) ) ) , args: operandMove ( place ( ... local: local ( 106 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 105 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 69 ) ) , unwind: unwindActionContinue ) , span: span ( 780 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 108 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 105 ) , projection: .ProjectionElems ) ) ) , span: span ( 780 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 108 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 70 ) ) branch ( 1 , basicBlockIdx ( 71 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 780 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 114 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 783 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 781 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 176 ) , id: mirConstId ( 89 ) ) ) ) , args: operandMove ( place ( ... local: local ( 114 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 113 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 72 ) ) , unwind: unwindActionContinue ) , span: span ( 782 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 109 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 105 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 784 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 784 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 109 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 780 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 785 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 159 ) , id: mirConstId ( 73 ) ) ) ) , args: operandMove ( place ( ... local: local ( 113 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 112 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 73 ) ) , unwind: unwindActionContinue ) , span: span ( 786 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 115 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 1 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 789 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 787 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 112 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 115 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 111 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 74 ) ) , unwind: unwindActionContinue ) , span: span ( 788 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 790 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 111 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 110 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 75 ) ) , unwind: unwindActionContinue ) , span: span ( 790 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 116 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 110 ) , projection: .ProjectionElems ) ) ) , span: span ( 790 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 116 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 76 ) ) branch ( 1 , basicBlockIdx ( 77 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 790 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 118 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 110 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 792 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 78 ) ) .Branches , otherwise: basicBlockIdx ( 85 ) ) ) , span: span ( 791 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 117 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 110 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 793 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 793 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 117 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 790 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 794 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 177 ) , id: mirConstId ( 90 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 119 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 79 ) ) , unwind: unwindActionContinue ) , span: span ( 795 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 80 ) ) .Branches , otherwise: basicBlockIdx ( 85 ) ) ) , span: span ( 796 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 797 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 178 ) , id: mirConstId ( 91 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 120 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 85 ) ) , unwind: unwindActionContinue ) , span: span ( 798 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 123 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 801 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 799 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 174 ) , id: mirConstId ( 87 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 123 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 122 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 82 ) ) , unwind: unwindActionContinue ) , span: span ( 800 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 802 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 175 ) , id: mirConstId ( 88 ) ) ) ) , args: operandMove ( place ( ... local: local ( 122 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 121 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 83 ) ) , unwind: unwindActionContinue ) , span: span ( 802 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 124 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 121 ) , projection: .ProjectionElems ) ) ) , span: span ( 802 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 124 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 85 ) ) branch ( 1 , basicBlockIdx ( 84 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 802 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 125 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 121 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 803 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 803 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 125 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 802 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 86 ) ) .Branches , otherwise: basicBlockIdx ( 87 ) ) ) , span: span ( 804 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 87 ) ) .Branches , otherwise: basicBlockIdx ( 95 ) ) ) , span: span ( 805 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 806 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 179 ) , id: mirConstId ( 92 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 127 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 88 ) ) , unwind: unwindActionContinue ) , span: span ( 807 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 808 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 175 ) , id: mirConstId ( 88 ) ) ) ) , args: operandMove ( place ( ... local: local ( 127 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 126 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 89 ) ) , unwind: unwindActionContinue ) , span: span ( 808 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 128 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 126 ) , projection: .ProjectionElems ) ) ) , span: span ( 808 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 128 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 90 ) ) branch ( 1 , basicBlockIdx ( 91 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 808 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 809 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 179 ) , id: mirConstId ( 92 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 131 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 92 ) ) , unwind: unwindActionContinue ) , span: span ( 810 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 129 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 126 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 811 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 811 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 129 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 808 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 812 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 175 ) , id: mirConstId ( 88 ) ) ) ) , args: operandMove ( place ( ... local: local ( 131 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 130 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 93 ) ) , unwind: unwindActionContinue ) , span: span ( 812 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 132 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 130 ) , projection: .ProjectionElems ) ) ) , span: span ( 812 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 132 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 123 ) ) branch ( 1 , basicBlockIdx ( 94 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 812 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 133 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 130 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 813 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 813 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 133 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 812 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 135 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 816 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 814 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 180 ) , id: mirConstId ( 93 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 135 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 134 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 96 ) ) , unwind: unwindActionContinue ) , span: span ( 815 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 817 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 151 ) , id: mirConstId ( 66 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 138 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 97 ) ) , unwind: unwindActionContinue ) , span: span ( 818 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 819 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 181 ) , id: mirConstId ( 94 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 138 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 137 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 98 ) ) , unwind: unwindActionContinue ) , span: span ( 820 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 821 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 154 ) , id: mirConstId ( 68 ) ) ) ) , args: operandMove ( place ( ... local: local ( 137 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 136 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 99 ) ) , unwind: unwindActionContinue ) , span: span ( 821 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 139 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 136 ) , projection: .ProjectionElems ) ) ) , span: span ( 821 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 139 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 100 ) ) branch ( 1 , basicBlockIdx ( 101 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 821 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 141 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 136 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) ) , span: span ( 824 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 146 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 141 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 825 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 822 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 158 ) , id: mirConstId ( 72 ) ) ) ) , args: operandMove ( place ( ... local: local ( 146 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 145 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 102 ) ) , unwind: unwindActionContinue ) , span: span ( 823 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 140 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 136 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 826 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 826 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 140 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 821 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 827 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 182 ) , id: mirConstId ( 95 ) ) ) ) , args: operandMove ( place ( ... local: local ( 145 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 144 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 103 ) ) , unwind: unwindActionContinue ) , span: span ( 828 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 147 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 14 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 831 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 829 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 144 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 147 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 143 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 104 ) ) , unwind: unwindActionContinue ) , span: span ( 830 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 832 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 143 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 142 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 105 ) ) , unwind: unwindActionContinue ) , span: span ( 832 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 148 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 142 ) , projection: .ProjectionElems ) ) ) , span: span ( 832 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 148 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 106 ) ) branch ( 1 , basicBlockIdx ( 107 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 832 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 150 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 142 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 835 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 833 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 180 ) , id: mirConstId ( 93 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 150 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 151 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 108 ) ) , unwind: unwindActionContinue ) , span: span ( 834 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 149 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 142 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 836 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 836 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 149 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 832 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 153 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 839 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 837 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 183 ) , id: mirConstId ( 96 ) ) ) ) , args: operandMove ( place ( ... local: local ( 153 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 152 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 109 ) ) , unwind: unwindActionContinue ) , span: span ( 838 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 152 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 123 ) ) .Branches , otherwise: basicBlockIdx ( 110 ) ) ) , span: span ( 838 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 840 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 184 ) , id: mirConstId ( 97 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 154 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 111 ) ) , unwind: unwindActionContinue ) , span: span ( 841 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 158 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 154 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 844 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 842 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 159 ) , id: mirConstId ( 73 ) ) ) ) , args: operandMove ( place ( ... local: local ( 158 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 157 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 112 ) ) , unwind: unwindActionContinue ) , span: span ( 843 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 159 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 14 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 847 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 845 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 157 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 159 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 156 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 113 ) ) , unwind: unwindActionContinue ) , span: span ( 846 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 848 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 156 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 155 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 114 ) ) , unwind: unwindActionContinue ) , span: span ( 848 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 160 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 155 ) , projection: .ProjectionElems ) ) ) , span: span ( 848 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 160 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 115 ) ) branch ( 1 , basicBlockIdx ( 116 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 848 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 162 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 155 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 851 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 154 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 162 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 852 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 849 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 184 ) , id: mirConstId ( 97 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 163 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 117 ) ) , unwind: unwindActionContinue ) , span: span ( 850 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 161 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 155 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 853 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 853 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 161 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 848 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 167 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 163 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 856 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 854 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 182 ) , id: mirConstId ( 95 ) ) ) ) , args: operandMove ( place ( ... local: local ( 167 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 166 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 118 ) ) , unwind: unwindActionContinue ) , span: span ( 855 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 168 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 14 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 859 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 857 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 166 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 168 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 165 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 119 ) ) , unwind: unwindActionContinue ) , span: span ( 858 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 860 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 165 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 164 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 120 ) ) , unwind: unwindActionContinue ) , span: span ( 860 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 169 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 164 ) , projection: .ProjectionElems ) ) ) , span: span ( 860 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 169 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 121 ) ) branch ( 1 , basicBlockIdx ( 122 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 860 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 171 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 164 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 862 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 163 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 171 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 863 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 123 ) ) , span: span ( 861 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 170 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 164 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 864 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 864 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 170 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 860 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) .Operands ) ) , span: span ( 866 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 865 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 865 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 867 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 868 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 869 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 149 ) , span: span ( 870 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 676 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 152 ) , span: span ( 677 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 678 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 679 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 680 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 185 ) , span: span ( 653 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 649 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 652 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 662 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 654 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 655 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 656 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 657 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 658 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 651 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 651 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 152 ) , span: span ( 660 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 150 ) , span: span ( 659 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 672 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 665 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 666 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 667 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 668 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 664 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 664 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 152 ) , span: span ( 669 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 53 ) , span: span ( 683 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 31 ) , span: span ( 682 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 675 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 688 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 688 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 29 ) , span: span ( 685 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 871 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 61 ) , span: span ( 686 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 61 ) , span: span ( 687 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 872 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 691 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 692 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 694 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 695 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 51 ) , span: span ( 705 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 703 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 701 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 698 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 699 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 704 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 708 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 708 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 707 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 54 ) , span: span ( 713 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 26 ) , span: span ( 712 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 710 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 718 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 718 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 24 ) , span: span ( 716 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 715 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 717 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 720 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 722 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 723 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 51 ) , span: span ( 733 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 731 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 729 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 726 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 727 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 732 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 738 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 738 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 735 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 734 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 736 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 737 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 740 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 741 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 744 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 748 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 749 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 750 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 747 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 747 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 751 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 751 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 753 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 754 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 55 ) , span: span ( 760 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 41 ) , span: span ( 759 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 757 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 764 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 764 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 39 ) , span: span ( 762 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 761 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 763 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 766 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 767 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 774 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 105 ) , span: span ( 770 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 114 ) , span: span ( 770 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 24 ) , span: span ( 771 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 105 ) , span: span ( 775 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 114 ) , span: span ( 775 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 773 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 48 ) , span: span ( 780 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 779 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 777 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 784 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 784 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 51 ) , span: span ( 790 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 788 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 786 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 782 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 783 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 789 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 793 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 793 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 792 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 795 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 798 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 48 ) , span: span ( 802 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 800 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 801 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 803 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 803 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 48 ) , span: span ( 808 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 807 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 811 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 811 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 48 ) , span: span ( 812 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 810 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 813 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 813 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 815 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 816 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 53 ) , span: span ( 821 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 31 ) , span: span ( 820 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 818 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 826 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 826 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 29 ) , span: span ( 824 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 51 ) , span: span ( 832 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 830 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 828 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 823 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 825 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 831 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 836 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 836 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 835 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 834 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 838 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 839 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 186 ) , span: span ( 841 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 51 ) , span: span ( 848 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 846 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 843 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 844 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 847 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 853 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 853 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 851 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 186 ) , span: span ( 850 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 51 ) , span: span ( 860 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 858 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 855 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 856 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 859 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 864 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 864 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 862 ) , mut: mutabilityNot ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 868 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "amount" ) , sourceInfo: sourceInfo ( ... span: span ( 869 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "expected_decimals" ) , sourceInfo: sourceInfo ( ... span: span ( 870 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "source_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 676 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "expected_mint_info" ) , sourceInfo: sourceInfo ( ... span: span ( 677 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 678 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "authority_info" ) , sourceInfo: sourceInfo ( ... span: span ( 679 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining" ) , sourceInfo: sourceInfo ( ... span: span ( 680 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "decimals" ) , sourceInfo: sourceInfo ( ... span: span ( 652 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "source_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 654 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "mint_info" ) , sourceInfo: sourceInfo ( ... span: span ( 655 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 656 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "authority_info" ) , sourceInfo: sourceInfo ( ... span: span ( 657 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining" ) , sourceInfo: sourceInfo ( ... span: span ( 658 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "source_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 665 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 666 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "authority_info" ) , sourceInfo: sourceInfo ( ... span: span ( 667 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining" ) , sourceInfo: sourceInfo ( ... span: span ( 668 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "source_account" ) , sourceInfo: sourceInfo ( ... span: span ( 873 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 688 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 34 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 685 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self_transfer" ) , sourceInfo: sourceInfo ( ... span: span ( 871 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining_amount" ) , sourceInfo: sourceInfo ( ... span: span ( 872 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 708 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 51 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 707 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account" ) , sourceInfo: sourceInfo ( ... span: span ( 874 ) , scope: sourceScope ( 16 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 718 ) , scope: sourceScope ( 17 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 57 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 716 ) , scope: sourceScope ( 19 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining_amount" ) , sourceInfo: sourceInfo ( ... span: span ( 875 ) , scope: sourceScope ( 21 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 72 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 738 ) , scope: sourceScope ( 22 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 71 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 735 ) , scope: sourceScope ( 24 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 72 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "mint_info" ) , sourceInfo: sourceInfo ( ... span: span ( 748 ) , scope: sourceScope ( 26 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "decimals" ) , sourceInfo: sourceInfo ( ... span: span ( 749 ) , scope: sourceScope ( 26 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 80 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "mint" ) , sourceInfo: sourceInfo ( ... span: span ( 876 ) , scope: sourceScope ( 27 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 93 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 764 ) , scope: sourceScope ( 28 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 92 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 762 ) , scope: sourceScope ( 30 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 93 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 784 ) , scope: sourceScope ( 32 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 109 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 877 ) , scope: sourceScope ( 34 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "delegated_amount" ) , sourceInfo: sourceInfo ( ... span: span ( 878 ) , scope: sourceScope ( 36 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 793 ) , scope: sourceScope ( 37 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 117 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 792 ) , scope: sourceScope ( 39 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 803 ) , scope: sourceScope ( 41 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 125 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 879 ) , scope: sourceScope ( 43 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 811 ) , scope: sourceScope ( 45 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 129 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 880 ) , scope: sourceScope ( 47 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 813 ) , scope: sourceScope ( 49 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 133 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 881 ) , scope: sourceScope ( 51 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account" ) , sourceInfo: sourceInfo ( ... span: span ( 882 ) , scope: sourceScope ( 53 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 826 ) , scope: sourceScope ( 54 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 140 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 824 ) , scope: sourceScope ( 56 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_amount" ) , sourceInfo: sourceInfo ( ... span: span ( 883 ) , scope: sourceScope ( 58 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 150 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 836 ) , scope: sourceScope ( 59 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 149 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 835 ) , scope: sourceScope ( 61 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 150 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "source_lamports" ) , sourceInfo: sourceInfo ( ... span: span ( 884 ) , scope: sourceScope ( 63 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 154 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 853 ) , scope: sourceScope ( 64 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 161 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 851 ) , scope: sourceScope ( 66 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 162 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_lamports" ) , sourceInfo: sourceInfo ( ... span: span ( 885 ) , scope: sourceScope ( 68 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 163 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 864 ) , scope: sourceScope ( 69 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 170 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 862 ) , scope: sourceScope ( 71 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 171 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 886 ) ) ) ) ty ( 145 ) |-> monoItemFn ( ... name: symbol ( "core::result::Result::<[u8; 8], core::array::TryFromSliceError>::map_err::" ) , id: defId ( 5 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 110 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 109 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 110 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 10 ) ) .ProjectionElems ) ) ) ) , span: span ( 113 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 112 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 111 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 111 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 112 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 112 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 111 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 18 ) , id: mirConstId ( 9 ) ) ) ) , args: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 112 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 115 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 116 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 114 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 118 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 118 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 119 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 117 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 117 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 120 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 20 ) , span: span ( 121 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 21 ) , span: span ( 122 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 9 ) , span: span ( 123 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 124 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 19 ) , span: span ( 115 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 10 ) , span: span ( 113 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 112 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 9 ) , span: span ( 111 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 23 ) , span: span ( 112 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 122 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 123 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 115 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 113 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 125 ) ) ) ) ty ( 146 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 19 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 19 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 56 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 20 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 19 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ty ( 199 ) |-> monoItemFn ( ... name: symbol ( "> as core::iter::Iterator>::next" ) , id: defId ( 31 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 451 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 450 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 453 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindTwoPhaseBorrow ) , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 108 ) ) .ProjectionElems ) ) ) , span: span ( 453 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 449 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 107 ) , id: mirConstId ( 43 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 450 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 455 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 456 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 7 ) ) branch ( 1 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 454 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 8 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 458 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 459 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 460 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 460 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 459 ) ) statement ( ... kind: statementKindStorageDead ( local ( 10 ) ) , span: span ( 461 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 109 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 462 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 463 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 464 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 457 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 457 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 6 ) , unwind: unwindActionTerminate ) , span: span ( 464 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindResume , span: span ( 465 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 109 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 467 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 468 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 464 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 457 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 4 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 104 ) ) .ProjectionElems ) ) ) ) , span: span ( 470 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 110 ) ) genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 471 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 466 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 472 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 104 ) ) .ProjectionElems ) ) ) ) , span: span ( 472 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 472 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 468 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 469 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 458 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 8 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 469 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) , target: basicBlockIdx ( 3 ) , unwind: unwindActionCleanup ( basicBlockIdx ( 5 ) ) ) , span: span ( 458 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 111 ) , span: span ( 475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 112 ) , span: span ( 476 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 451 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 113 ) , span: span ( 452 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 114 ) , span: span ( 450 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 115 ) , span: span ( 453 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 472 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 477 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 116 ) , span: span ( 458 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 109 ) , span: span ( 459 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 460 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 478 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 470 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 476 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 451 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 479 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 110 ) , id: mirConstId ( 44 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 472 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "i" ) , sourceInfo: sourceInfo ( ... span: span ( 477 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 480 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 470 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 481 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 110 ) , id: mirConstId ( 44 ) ) ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 465 ) ) ) ) ty ( 198 ) |-> monoItemFn ( ... name: symbol ( "> as core::iter::IntoIterator>::into_iter" ) , id: defId ( 32 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 483 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 482 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 117 ) , span: span ( 484 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 117 ) , span: span ( 485 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 485 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 486 ) ) ) ) ty ( 194 ) |-> monoItemFn ( ... name: symbol ( "core::array::> for [[u8; 32]; 11]>::index" ) , id: defId ( 17 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 70 ) ) ) , span: span ( 251 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 249 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 75 ) , id: mirConstId ( 20 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 250 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 252 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 70 ) , span: span ( 253 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 76 ) , span: span ( 254 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 71 ) , span: span ( 255 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 70 ) , span: span ( 251 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 254 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "index" ) , sourceInfo: sourceInfo ( ... span: span ( 255 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 256 ) ) ) ) ty ( 197 ) |-> monoItemFn ( ... name: symbol ( " as core::iter::Iterator>::enumerate" ) , id: defId ( 82 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 83 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 108 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1421 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) .Operands ) ) , span: span ( 1422 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1420 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 117 ) , span: span ( 1423 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 108 ) , span: span ( 1424 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1424 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 1425 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1426 ) ) ) ) ty ( 196 ) |-> monoItemFn ( ... name: symbol ( "core::slice::::iter" ) , id: defId ( 14 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 201 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 289 ) , id: mirConstId ( 205 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 202 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 203 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 108 ) , span: span ( 204 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 70 ) , span: span ( 205 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 205 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 206 ) ) ) ) ty ( 191 ) |-> monoItemFn ( ... name: symbol ( "core::slice::::iter" ) , id: defId ( 14 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 201 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 63 ) , id: mirConstId ( 17 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 202 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 203 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 64 ) , span: span ( 204 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 205 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 205 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 206 ) ) ) ) ty ( 190 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 34 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 34 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 34 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 49 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 36 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) ty ( 193 ) |-> monoItemFn ( ... name: symbol ( " as core::iter::Iterator>::next" ) , id: defId ( 87 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 1460 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1459 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1459 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1462 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1463 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1464 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1461 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1465 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 121 ) ) .ProjectionElems ) ) ) , span: span ( 1466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 271 ) ) ) , span: span ( 1467 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1468 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1469 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1470 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1471 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) ) ) , span: span ( 1471 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 1472 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 1472 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 1474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) ) ) ) , span: span ( 1474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 11 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 1476 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1477 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 1478 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1478 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1461 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 1460 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 202 ) , id: mirConstId ( 167 ) ) ) ) ) ) , span: span ( 1480 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 1479 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 1482 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 1483 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 1484 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) ) ) ) , span: span ( 1485 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1481 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 9 ) ) .Branches , otherwise: basicBlockIdx ( 8 ) ) ) , span: span ( 1481 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 1487 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1486 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 1484 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) ) , span: span ( 1483 ) ) statement ( ... kind: statementKindStorageLive ( local ( 27 ) ) , span: span ( 1488 ) ) statement ( ... kind: statementKindStorageLive ( local ( 26 ) ) , span: span ( 1489 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 15 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) , ty ( 125 ) ) ) , span: span ( 1440 ) ) statement ( ... kind: statementKindStorageDead ( local ( 26 ) ) , span: span ( 1490 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 27 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1491 ) ) statement ( ... kind: statementKindStorageDead ( local ( 27 ) ) , span: span ( 1488 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 1492 ) ) statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 1482 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 62 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1493 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 1479 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 1495 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 121 ) ) .ProjectionElems ) ) ) , span: span ( 1495 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , ty ( 266 ) ) ) , span: span ( 1496 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 1497 ) ) statement ( ... kind: statementKindStorageLive ( local ( 18 ) ) , span: span ( 1498 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 1499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 16 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1498 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 1500 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1501 ) ) statement ( ... kind: statementKindStorageDead ( local ( 18 ) ) , span: span ( 1500 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1494 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 1502 ) ) statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 1503 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 121 ) ) .ProjectionElems ) ) ) , span: span ( 1503 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 272 ) ) ) , span: span ( 1496 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 1504 ) ) statement ( ... kind: statementKindStorageLive ( local ( 22 ) ) , span: span ( 1505 ) ) statement ( ... kind: statementKindStorageLive ( local ( 23 ) ) , span: span ( 1506 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) ) ) ) , span: span ( 1506 ) ) statement ( ... kind: statementKindStorageLive ( local ( 24 ) ) , span: span ( 1507 ) ) statement ( ... kind: statementKindStorageLive ( local ( 25 ) ) , span: span ( 1508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 23 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1507 ) ) statement ( ... kind: statementKindStorageDead ( local ( 25 ) ) , span: span ( 1509 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 124 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1510 ) ) statement ( ... kind: statementKindStorageDead ( local ( 24 ) ) , span: span ( 1511 ) ) statement ( ... kind: statementKindStorageDead ( local ( 23 ) ) , span: span ( 1512 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1513 ) ) statement ( ... kind: statementKindStorageDead ( local ( 22 ) ) , span: span ( 1512 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 1514 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1494 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 202 ) , span: span ( 1515 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 203 ) , span: span ( 1516 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1460 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1517 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1462 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1518 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 271 ) , span: span ( 1465 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 273 ) , span: span ( 1466 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 274 ) , span: span ( 1471 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 274 ) , span: span ( 1472 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1519 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1474 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 274 ) , span: span ( 1483 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1483 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 266 ) , span: span ( 1520 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 275 ) , span: span ( 1495 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1498 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1499 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 272 ) , span: span ( 1502 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 275 ) , span: span ( 1503 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1505 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1506 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1507 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1508 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 125 ) , span: span ( 1489 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1475 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1516 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1517 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "end" ) , sourceInfo: sourceInfo ( ... span: span ( 1518 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1521 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1522 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1523 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1524 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "offset" ) , sourceInfo: sourceInfo ( ... span: span ( 1525 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1526 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "old" ) , sourceInfo: sourceInfo ( ... span: span ( 1527 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1528 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "_end" ) , sourceInfo: sourceInfo ( ... span: span ( 1529 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1530 ) , scope: sourceScope ( 16 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1530 ) , scope: sourceScope ( 17 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1531 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 1532 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1526 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1533 ) , scope: sourceScope ( 19 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 20 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1534 ) , scope: sourceScope ( 21 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1535 ) ) ) ) ty ( 192 ) |-> monoItemFn ( ... name: symbol ( " as core::iter::IntoIterator>::into_iter" ) , id: defId ( 32 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 483 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 482 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 64 ) , span: span ( 484 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 64 ) , span: span ( 485 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 485 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 486 ) ) ) ) ty ( 189 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::" ) , id: defId ( 65 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1198 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 224 ) , id: mirConstId ( 133 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1199 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1200 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 225 ) , id: mirConstId ( 134 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 37 ) , id: mirConstId ( 135 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1201 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1202 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 36 ) , span: span ( 1203 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1204 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 36 ) , span: span ( 1199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1204 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1205 ) ) ) ) ty ( 188 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::data_len" ) , id: defId ( 54 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 995 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 995 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 995 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionUnreachable ) , span: span ( 995 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 8 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 997 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 996 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 998 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 999 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 999 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 995 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 999 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1000 ) ) ) ) ty ( 183 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::is_native" ) , id: defId ( 61 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1169 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1169 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 64 ) ) ) ) ) ) , span: span ( 1168 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1168 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 1168 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 5 ) , ty ( 223 ) ) projectionElemIndex ( local ( 3 ) ) .ProjectionElems ) ) ) ) , span: span ( 1168 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1171 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) ) , span: span ( 1172 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1170 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1173 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1174 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1168 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1169 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1168 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1168 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1174 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1175 ) ) ) ) ty ( 181 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_mut_unchecked::" ) , id: defId ( 68 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1229 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1230 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1231 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xa5\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 142 ) ) ) ) ) ) , span: span ( 1228 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1228 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1233 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1234 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1232 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1235 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 235 ) , id: mirConstId ( 147 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1236 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 236 ) ) ) , span: span ( 1237 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 7 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1238 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1239 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1232 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1232 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 31 ) , span: span ( 1240 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 1241 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1228 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1230 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1229 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1233 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 1238 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 236 ) , span: span ( 1237 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1236 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1241 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1242 ) ) ) ) ty ( 182 ) |-> monoItemFn ( ... name: symbol ( "core::num::::checked_add" ) , id: defId ( 73 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1327 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1328 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1328 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) ) ) , span: span ( 1327 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 1326 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1329 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1330 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 253 ) , id: mirConstId ( 157 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1331 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1333 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1333 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 102 ) , id: mirConstId ( 158 ) ) ) ) ) ) , span: span ( 1334 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 1 ) ) , span: span ( 1332 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1333 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1333 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1335 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpAddUnchecked , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1336 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1337 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1338 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 1 ) ) , span: span ( 1332 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 102 ) , span: span ( 1339 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1340 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1341 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1327 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 254 ) , span: span ( 1328 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1335 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 1331 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1340 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1341 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1342 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1343 ) ) ) ) ty ( 187 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::owner" ) , id: defId ( 52 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 984 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 6 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 984 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 983 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 104 ) , span: span ( 985 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 986 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 986 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 986 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 987 ) ) ) ) ty ( 180 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::set_amount" ) , id: defId ( 57 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1134 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 221 ) , id: mirConstId ( 131 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1135 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 2 ) , ty ( 19 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1137 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1136 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1138 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 1139 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1140 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1135 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1139 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "amount" ) , sourceInfo: sourceInfo ( ... span: span ( 1140 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1141 ) ) ) ) ty ( 184 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::borrow_mut_lamports_unchecked" ) , id: defId ( 97 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 1636 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 7 ) , ty ( 50 ) ) .ProjectionElems ) ) ) , span: span ( 1636 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1635 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 186 ) , span: span ( 1637 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1638 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1638 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1638 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1639 ) ) ) ) ty ( 4 ) |-> monoItemFn ( ... name: symbol ( "core::ptr::align_offset::mod_inv" ) , id: defId ( 34 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 494 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 495 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 496 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 493 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 497 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 497 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x0b\r\x07\t\x03\x05\x0f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityNot ) ) , ty: ty ( 19 ) , id: mirConstId ( 46 ) ) ) ) ) ) , span: span ( 497 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 498 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x0f\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 47 ) ) ) ) ) ) , span: span ( 499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShr , operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 500 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 119 ) , id: mirConstId ( 48 ) ) ) ) ) ) , span: span ( 498 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 500 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) ) ) , span: span ( 493 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) , index: operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 493 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemIndex ( local ( 7 ) ) .ProjectionElems ) ) ) ) , span: span ( 493 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 502 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 503 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 504 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 504 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 505 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 506 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x10\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 49 ) ) ) ) ) ) , span: span ( 506 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 2 ) ) , span: span ( 501 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 507 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGe , operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 507 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 507 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 509 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 510 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 509 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 510 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 512 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 513 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 513 ) ) statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 514 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 515 ) ) statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 516 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 516 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpMul , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 515 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 517 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandConstant ( constOperand ( ... span: span ( 518 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x02\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 50 ) ) ) ) , operandMove ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 514 ) ) statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 519 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpMul , operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 512 ) ) statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 520 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 520 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 521 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 520 ) ) statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 522 ) ) statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 523 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 523 ) ) statement ( ... kind: statementKindStorageLive ( local ( 22 ) ) , span: span ( 524 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 524 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpMul , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 522 ) ) statement ( ... kind: statementKindStorageDead ( local ( 22 ) ) , span: span ( 525 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 525 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 20 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 526 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 20 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) ) ) , span: span ( 527 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 528 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 6 ) ) ) , span: span ( 511 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 529 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 2 ) ) , span: span ( 501 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 23 ) ) , span: span ( 531 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 531 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandMove ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 532 ) ) statement ( ... kind: statementKindStorageDead ( local ( 23 ) ) , span: span ( 533 ) ) statement ( ... kind: statementKindStorageDead ( local ( 10 ) ) , span: span ( 534 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 534 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 530 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 535 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 536 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 537 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 538 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 496 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 493 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 19 ) , span: span ( 497 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 498 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 499 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 493 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 505 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 507 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 508 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 512 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 513 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 514 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 515 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 516 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 526 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 527 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 116 ) , span: span ( 522 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 523 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 524 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 531 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "x" ) , sourceInfo: sourceInfo ( ... span: span ( 536 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "m" ) , sourceInfo: sourceInfo ( ... span: span ( 537 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "m_minus_one" ) , sourceInfo: sourceInfo ( ... span: span ( 538 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "inverse" ) , sourceInfo: sourceInfo ( ... span: span ( 496 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "mod_gate" ) , sourceInfo: sourceInfo ( ... span: span ( 505 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "new_gate" ) , sourceInfo: sourceInfo ( ... span: span ( 526 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "overflow" ) , sourceInfo: sourceInfo ( ... span: span ( 527 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 539 ) ) ) ) ty ( -1 ) |-> monoItemFn ( ... name: symbol ( "main" ) , id: defId ( 94 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1617 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1618 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 1619 ) ) ) ) ty ( 83 ) |-> monoItemFn ( ... name: symbol ( " as core::slice::SliceIndex<[[u8; 32]]>>::index" ) , id: defId ( 15 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 208 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 209 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 210 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 207 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 207 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 207 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 211 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 66 ) , id: mirConstId ( 18 ) ) ) ) , args: operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 212 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 214 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 215 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 216 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 216 ) ) statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 215 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 217 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 218 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandCopy ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 219 ) ) statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 217 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindRawPtr ( ty ( 68 ) , mutabilityNot ) , operandCopy ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 220 ) ) statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 215 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 221 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 11 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 222 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 223 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 213 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 226 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 227 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 224 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 69 ) , id: mirConstId ( 19 ) ) ) ) , args: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 225 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 229 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 230 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 231 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 232 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 226 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 233 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 227 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 228 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 234 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGt , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 228 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 228 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 70 ) , span: span ( 235 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 236 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 70 ) , span: span ( 237 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 72 ) , span: span ( 238 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 233 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 73 ) , span: span ( 208 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 209 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 210 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 228 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 234 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 212 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 74 ) , span: span ( 215 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 74 ) , span: span ( 216 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 207 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 229 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 239 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 67 ) , span: span ( 240 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 236 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 237 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "new_len" ) , sourceInfo: sourceInfo ( ... span: span ( 233 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 241 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 242 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 243 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "offset" ) , sourceInfo: sourceInfo ( ... span: span ( 244 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 245 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 239 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 246 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "index" ) , sourceInfo: sourceInfo ( ... span: span ( 247 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 240 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 248 ) ) ) ) ty ( 98 ) |-> monoItemFn ( ... name: symbol ( "::is_initialized" ) , id: defId ( 26 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 2 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 397 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 398 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) ) , span: span ( 399 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 396 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 400 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 401 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 397 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 401 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 402 ) ) ) ) ty ( 99 ) |-> monoItemFn ( ... name: symbol ( "::is_initialized" ) , id: defId ( 25 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 390 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 391 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) ) , span: span ( 392 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 389 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 393 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 394 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 390 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 394 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 395 ) ) ) ) ty ( 96 ) |-> monoItemFn ( ... name: symbol ( "::ne" ) , id: defId ( 10 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 161 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 160 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 57 ) , id: mirConstId ( 14 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 161 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 163 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 164 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 162 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 165 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 58 ) , span: span ( 166 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 58 ) , span: span ( 167 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 161 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 166 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 167 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 168 ) ) ) ) ty ( 11 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::error:: for pinocchio::program_error::ProgramError>::from" ) , id: defId ( 89 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 0 ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLe , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1574 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x13" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 194 ) ) ) ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindIntrinsic ( nonDivergingIntrinsicAssume ( operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 7 ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1575 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1573 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 8 ) , span: span ( 1576 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 1577 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 1574 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 1578 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1574 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1574 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 1577 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1579 ) ) ) ) ty ( 18 ) |-> monoItemFn ( ... name: symbol ( "processor::transfer::process_transfer::{closure#0}" ) , id: defId ( 1 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 2 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 96 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 95 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 8 ) , span: span ( 97 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 9 ) , span: span ( 98 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 10 ) , span: span ( 99 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "_error" ) , sourceInfo: sourceInfo ( ... span: span ( 99 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 10 ) , id: mirConstId ( 6 ) ) ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 98 ) ) ) ) ty ( 16 ) |-> monoItemFn ( ... name: symbol ( ">::from" ) , id: defId ( 7 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 142 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 141 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 8 ) , span: span ( 143 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 144 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 144 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 145 ) ) ) ) ty ( 40 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::::{closure#0}" ) , id: defId ( 27 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 99 ) , id: mirConstId ( 39 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 404 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 406 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 9 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 407 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 408 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 409 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 41 ) , span: span ( 410 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 42 ) , span: span ( 411 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 412 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 404 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 407 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 412 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 411 ) ) ) ) ty ( 25 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::::{closure#0}" ) , id: defId ( 27 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 100 ) , id: mirConstId ( 40 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 404 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 406 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 9 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 407 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 408 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 409 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 26 ) , span: span ( 410 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 27 ) , span: span ( 411 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 412 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 404 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 407 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 412 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 411 ) ) ) ) ty ( 30 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_mut::::{closure#0}" ) , id: defId ( 28 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 415 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 413 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 100 ) , id: mirConstId ( 40 ) ) ) ) , args: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 414 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 414 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 417 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 416 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 9 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 418 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 419 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 416 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 420 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 31 ) , span: span ( 421 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 32 ) , span: span ( 422 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 423 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 414 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 415 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 418 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 423 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 422 ) ) ) ) ty ( 35 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::::{closure#0}" ) , id: defId ( 27 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 98 ) , id: mirConstId ( 38 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 404 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 406 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 9 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 407 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 408 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 409 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 36 ) , span: span ( 410 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 37 ) , span: span ( 411 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 412 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 404 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 407 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 412 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 411 ) ) ) ) ty ( 75 ) |-> monoItemFn ( ... name: symbol ( "core::slice::index::> for [[u8; 32]]>::index" ) , id: defId ( 19 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 296 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 83 ) , id: mirConstId ( 24 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 297 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 298 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 70 ) , span: span ( 299 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 70 ) , span: span ( 300 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 71 ) , span: span ( 301 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 300 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "index" ) , sourceInfo: sourceInfo ( ... span: span ( 301 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 302 ) ) ) ) ty ( 57 ) |-> monoItemFn ( ... name: symbol ( "::eq" ) , id: defId ( 11 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 170 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 171 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 172 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 169 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 173 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 58 ) , span: span ( 174 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 58 ) , span: span ( 175 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 176 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 177 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 174 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 175 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "__self_discr" ) , sourceInfo: sourceInfo ( ... span: span ( 176 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "__arg1_discr" ) , sourceInfo: sourceInfo ( ... span: span ( 177 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 178 ) ) ) ) ty ( 59 ) |-> monoItemFn ( ... name: symbol ( "core::num::::unchecked_add::precondition_check" ) , id: defId ( 77 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1372 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1373 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1374 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 50 ) ) ) , span: span ( 1374 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1375 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 50 ) ) ) , span: span ( 1375 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1373 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1376 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1376 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 1377 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) ) ) , span: span ( 1378 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1379 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1372 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1371 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1380 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 86 ) , id: mirConstId ( 26 ) ) ) ) , args: operandConstant ( constOperand ( ... span: span ( 1381 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00E\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 8 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 87 ) , id: mirConstId ( 160 ) ) ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionUnreachable ) , span: span ( 1382 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1383 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1384 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1385 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1385 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 72 ) , span: span ( 1382 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1377 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1378 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 254 ) , span: span ( 1373 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1374 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1375 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "lhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1385 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1385 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1386 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1387 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 1377 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1378 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1388 ) ) ) ) ty ( 60 ) |-> monoItemFn ( ... name: symbol ( "::eq" ) , id: defId ( 96 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) ) , span: span ( 1628 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) ) , span: span ( 1629 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1630 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1627 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1631 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1632 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1633 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1628 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1629 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1632 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1633 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1634 ) ) ) ) ty ( 63 ) |-> monoItemFn ( ... name: symbol ( "core::slice::Iter::<'_, pinocchio::account_info::AccountInfo>::new" ) , id: defId ( 84 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1428 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1429 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1430 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 250 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1431 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , ty ( 121 ) ) ) , span: span ( 1432 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 124 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1433 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1434 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1435 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1427 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1427 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 121 ) ) ) , span: span ( 1437 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1438 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1439 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , ty ( 125 ) ) ) , span: span ( 1440 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 583 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1441 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 121 ) ) ) , span: span ( 1438 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1442 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1444 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1444 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 86 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) genericArgKindType ( ty ( 124 ) ) .GenericArgs , someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 3 ) ) , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 262 ) , id: mirConstId ( 165 ) ) ) ) .Operands ) ) , span: span ( 1445 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1446 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1447 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1443 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 64 ) , span: span ( 1448 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 1449 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1450 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1451 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 264 ) , span: span ( 1429 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1435 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 125 ) , span: span ( 1438 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 125 ) , span: span ( 1439 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1444 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 251 ) , span: span ( 1452 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1432 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 1449 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1450 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 1451 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "end_or_len" ) , sourceInfo: sourceInfo ( ... span: span ( 1435 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 1453 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 1454 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1455 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "addr" ) , sourceInfo: sourceInfo ( ... span: span ( 1457 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 585 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 586 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1458 ) ) ) ) ty ( 276 ) |-> monoItemFn ( ... name: symbol ( "core::cmp::min_by:: fn(&'a usize, &'b usize) -> core::cmp::Ordering {::cmp}>" ) , id: defId ( 93 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1602 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 41 ) ) ) ) ) ) , span: span ( 1602 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1602 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 41 ) ) ) ) ) ) , span: span ( 1602 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1602 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1602 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 1603 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 1604 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1602 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1601 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 279 ) , id: mirConstId ( 198 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionCleanup ( basicBlockIdx ( 7 ) ) ) , span: span ( 1602 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1606 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 1602 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 255 , basicBlockIdx ( 4 ) ) branch ( 0 , basicBlockIdx ( 4 ) ) branch ( 1 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 1605 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 1602 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1608 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1607 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1609 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) ) ) , span: span ( 1609 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1609 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1607 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 10 ) ) ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1610 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 12 ) , unwind: unwindActionTerminate ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindResume , span: span ( 1611 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 6 ) , unwind: unwindActionCleanup ( basicBlockIdx ( 12 ) ) ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 1 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 6 ) , unwind: unwindActionContinue ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 1 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 8 ) , unwind: unwindActionTerminate ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 1607 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 1612 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1613 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1614 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 277 ) , span: span ( 1615 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 246 ) , span: span ( 1602 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 280 ) , span: span ( 1602 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1603 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1604 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 281 ) , span: span ( 1616 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1607 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1607 ) , mut: mutabilityMut ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "v1" ) , sourceInfo: sourceInfo ( ... span: span ( 1613 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v2" ) , sourceInfo: sourceInfo ( ... span: span ( 1614 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "compare" ) , sourceInfo: sourceInfo ( ... span: span ( 1615 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1611 ) ) ) ) + ty ( 278 ) |-> monoItemFn ( ... name: symbol ( "::min" ) , id: defId ( 91 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1586 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 276 ) , id: mirConstId ( 195 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1587 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 277 ) , id: mirConstId ( 196 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1588 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1589 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 1590 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1591 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1592 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1591 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1592 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1593 ) ) ) ) + ty ( 279 ) |-> monoItemFn ( ... name: symbol ( " fn(&'a usize, &'b usize) -> core::cmp::Ordering {::cmp} as core::ops::FnOnce<(&usize, &usize)>>::call_once" ) , id: defId ( 102 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 247 ) ) .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 247 ) ) .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1680 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1680 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 246 ) , span: span ( 1680 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 277 ) , span: span ( 1680 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 280 ) , span: span ( 1680 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: .VarDebugInfos , spreadArg: someLocal ( local ( 2 ) ) , span: span ( 1680 ) ) ) ) + ty ( 292 ) |-> monoItemFn ( ... name: symbol ( "::forward_unchecked" ) , id: defId ( 12 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 179 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 6 ) ) ) , span: span ( 180 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 179 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 181 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 59 ) , id: mirConstId ( 15 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 182 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 184 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpAddUnchecked , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 185 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 183 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 186 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 187 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 188 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 179 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 182 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "start" ) , sourceInfo: sourceInfo ( ... span: span ( 187 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "n" ) , sourceInfo: sourceInfo ( ... span: span ( 188 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 189 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 190 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 191 ) ) ) ) + ty ( 240 ) |-> monoItemFn ( ... name: symbol ( "entrypoint::process_instruction" ) , id: defId ( 43 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 601 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 137 ) , id: mirConstId ( 52 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 602 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 2 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 605 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 603 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 138 ) , id: mirConstId ( 53 ) ) ) ) , args: operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 604 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 606 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 139 ) , id: mirConstId ( 54 ) ) ) ) , args: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 606 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) ) , span: span ( 606 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) branch ( 1 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 606 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 606 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 45 ) ) .ProjectionElems ) ) ) ) , span: span ( 608 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 12 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 140 ) ) .ProjectionElems ) ) ) ) , span: span ( 609 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 12 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 81 ) ) .ProjectionElems ) ) ) ) , span: span ( 610 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 4 ) , projection: projectionElemDeref .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 3 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 7 ) ) ) , span: span ( 607 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 6 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 611 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 611 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 606 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 614 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 612 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 142 ) , id: mirConstId ( 56 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 613 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 615 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 143 ) , id: mirConstId ( 57 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 616 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 617 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 618 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 619 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 620 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 621 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 140 ) , span: span ( 609 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 610 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 46 ) , span: span ( 606 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 47 ) , span: span ( 604 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 101 ) , span: span ( 602 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 605 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 611 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 611 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 45 ) , span: span ( 608 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 614 ) , mut: mutabilityMut ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "_program_id" ) , sourceInfo: sourceInfo ( ... span: span ( 619 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 620 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 621 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "discriminator" ) , sourceInfo: sourceInfo ( ... span: span ( 609 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 610 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 611 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 608 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 622 ) ) ) ) + ty ( 290 ) |-> monoItemFn ( ... name: symbol ( " as core::iter::range::RangeIteratorImpl>::spec_next" ) , id: defId ( 107 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 1721 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1722 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) , span: span ( 1722 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1723 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) ) , span: span ( 1723 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1721 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 291 ) , id: mirConstId ( 207 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1721 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 1721 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1727 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1727 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1728 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1729 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1724 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 292 ) , id: mirConstId ( 208 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1725 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1726 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1731 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1732 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1733 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 1730 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1727 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1727 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1734 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 1730 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 1736 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1735 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 73 ) , span: span ( 1737 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 220 ) , span: span ( 1738 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1721 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1722 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1723 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1739 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1729 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1738 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "old" ) , sourceInfo: sourceInfo ( ... span: span ( 1739 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1740 ) ) ) ) + ty ( 291 ) |-> monoItemFn ( ... name: symbol ( "core::cmp::impls::::lt" ) , id: defId ( 105 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1707 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1707 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1708 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1708 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1709 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1710 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1710 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1706 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1711 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1712 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1713 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1707 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1708 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1712 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1713 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1714 ) ) ) ) + ty ( 241 ) |-> monoItemFn ( ... name: symbol ( ">::into" ) , id: defId ( 90 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1580 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 282 ) , id: mirConstId ( 199 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1581 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1582 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1583 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1584 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1584 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1585 ) ) ) ) + ty ( 248 ) |-> monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts::precondition_check" ) , id: defId ( 21 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 308 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 309 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 309 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 310 ) ) statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 311 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 306 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 84 ) , id: mirConstId ( 25 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 10 ) ) , unwind: unwindActionUnreachable ) , span: span ( 307 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 313 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 314 ) ) statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 314 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 315 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 316 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 312 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 11 ) ) .Branches , otherwise: basicBlockIdx ( 12 ) ) ) , span: span ( 312 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 318 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 318 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 317 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 313 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 319 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 86 ) , id: mirConstId ( 26 ) ) ) ) , args: operandConstant ( constOperand ( ... span: span ( 320 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 0 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 87 ) , id: mirConstId ( 27 ) ) ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionUnreachable ) , span: span ( 321 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 322 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 323 ) ) statement ( ... kind: statementKindStorageLive ( local ( 18 ) ) , span: span ( 324 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 325 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 326 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 327 ) ) statement ( ... kind: statementKindStorageDead ( local ( 18 ) ) , span: span ( 324 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 328 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 329 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 310 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 308 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 322 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 310 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 308 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 330 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 331 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 332 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 333 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 332 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 331 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 334 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 7 ) ) ) , span: span ( 322 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 330 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 337 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 339 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 29 ) ) ) ) , ty ( 90 ) ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 340 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 91 ) , id: mirConstId ( 30 ) ) ) ) , ty ( 92 ) ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 22 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 93 ) , id: mirConstId ( 31 ) ) ) ) operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 341 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 342 ) ) statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 342 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 335 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 88 ) , id: mirConstId ( 28 ) ) ) ) , args: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionTerminate ) , span: span ( 336 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 330 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 344 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 344 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 14 ) ) , span: span ( 343 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , expected: false , msg: assertMessageDivisionByZero ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\x7f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 32 ) ) ) ) ) , target: basicBlockIdx ( 13 ) , unwind: unwindActionTerminate ) , span: span ( 345 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpDiv , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\x7f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 32 ) ) ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 345 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 14 ) ) , span: span ( 343 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 346 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 346 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLe , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 347 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 348 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 349 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 314 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 314 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 350 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 94 ) , span: span ( 351 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 351 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 351 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 351 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 308 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 309 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 314 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 321 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 323 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 336 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 95 ) , span: span ( 337 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 331 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 352 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 332 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 311 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 90 ) , span: span ( 338 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 92 ) , span: span ( 340 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 353 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 315 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 312 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 346 ) , mut: mutabilityMut ) .LocalDecls , argCount: 4 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 351 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "size" ) , sourceInfo: sourceInfo ( ... span: span ( 351 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 351 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 351 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 4 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 354 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 355 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "is_zst" ) , sourceInfo: sourceInfo ( ... span: span ( 356 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 357 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "is_zst" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 357 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 359 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 360 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 361 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 362 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "pieces" ) , sourceInfo: sourceInfo ( ... span: span ( 363 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 339 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 29 ) ) ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 364 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 353 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 365 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 13 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "size" ) , sourceInfo: sourceInfo ( ... span: span ( 366 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 367 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "max_len" ) , sourceInfo: sourceInfo ( ... span: span ( 315 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 368 ) ) ) ) + ty ( 282 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::program_error:: for u64>::from" ) , id: defId ( 88 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 1537 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) branch ( 1 , basicBlockIdx ( 27 ) ) branch ( 2 , basicBlockIdx ( 26 ) ) branch ( 3 , basicBlockIdx ( 25 ) ) branch ( 4 , basicBlockIdx ( 24 ) ) branch ( 5 , basicBlockIdx ( 23 ) ) branch ( 6 , basicBlockIdx ( 22 ) ) branch ( 7 , basicBlockIdx ( 21 ) ) branch ( 8 , basicBlockIdx ( 20 ) ) branch ( 9 , basicBlockIdx ( 19 ) ) branch ( 10 , basicBlockIdx ( 18 ) ) branch ( 11 , basicBlockIdx ( 17 ) ) branch ( 12 , basicBlockIdx ( 16 ) ) branch ( 13 , basicBlockIdx ( 15 ) ) branch ( 14 , basicBlockIdx ( 14 ) ) branch ( 15 , basicBlockIdx ( 13 ) ) branch ( 16 , basicBlockIdx ( 12 ) ) branch ( 17 , basicBlockIdx ( 11 ) ) branch ( 18 , basicBlockIdx ( 10 ) ) branch ( 19 , basicBlockIdx ( 9 ) ) branch ( 20 , basicBlockIdx ( 8 ) ) branch ( 21 , basicBlockIdx ( 7 ) ) branch ( 22 , basicBlockIdx ( 6 ) ) branch ( 23 , basicBlockIdx ( 5 ) ) branch ( 24 , basicBlockIdx ( 4 ) ) branch ( 25 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1536 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 1537 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 7 ) ) .ProjectionElems ) ) ) ) , span: span ( 1539 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 28 ) ) .Branches , otherwise: basicBlockIdx ( 29 ) ) ) , span: span ( 1538 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1540 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x1a\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 168 ) ) ) ) ) ) , span: span ( 1540 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1540 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1541 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x19\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 169 ) ) ) ) ) ) , span: span ( 1541 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1541 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1542 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x18\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 170 ) ) ) ) ) ) , span: span ( 1542 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1542 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1543 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x17\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 171 ) ) ) ) ) ) , span: span ( 1543 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1543 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1544 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x16\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 172 ) ) ) ) ) ) , span: span ( 1544 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1544 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1545 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x15\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 173 ) ) ) ) ) ) , span: span ( 1545 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1545 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1546 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x14\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 174 ) ) ) ) ) ) , span: span ( 1546 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1546 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1547 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x13\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 175 ) ) ) ) ) ) , span: span ( 1547 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1547 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1548 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x12\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 176 ) ) ) ) ) ) , span: span ( 1548 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1548 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1549 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x11\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 177 ) ) ) ) ) ) , span: span ( 1549 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1549 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1550 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x10\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 178 ) ) ) ) ) ) , span: span ( 1550 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1550 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1551 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x0f\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 179 ) ) ) ) ) ) , span: span ( 1551 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1551 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1552 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x0e\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 180 ) ) ) ) ) ) , span: span ( 1552 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1552 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1553 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\r\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 181 ) ) ) ) ) ) , span: span ( 1553 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1553 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1554 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\f\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 182 ) ) ) ) ) ) , span: span ( 1554 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1554 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1555 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x0b\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 183 ) ) ) ) ) ) , span: span ( 1555 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1555 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1556 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\n\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 184 ) ) ) ) ) ) , span: span ( 1556 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1556 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1557 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\t\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 185 ) ) ) ) ) ) , span: span ( 1557 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1557 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1558 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x08\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 186 ) ) ) ) ) ) , span: span ( 1558 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1558 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1559 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x07\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 187 ) ) ) ) ) ) , span: span ( 1559 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1559 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1560 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x06\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 188 ) ) ) ) ) ) , span: span ( 1560 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1560 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1561 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x05\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 189 ) ) ) ) ) ) , span: span ( 1561 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1561 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1562 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x04\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 190 ) ) ) ) ) ) , span: span ( 1562 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1562 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1563 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x03\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 191 ) ) ) ) ) ) , span: span ( 1563 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1563 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1564 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x02\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 192 ) ) ) ) ) ) , span: span ( 1564 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1564 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1566 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x01\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 50 ) , id: mirConstId ( 193 ) ) ) ) ) ) , span: span ( 1566 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1565 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 50 ) ) ) , span: span ( 1567 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 30 ) ) , span: span ( 1565 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1568 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1569 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1570 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 1571 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 1539 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "error" ) , sourceInfo: sourceInfo ( ... span: span ( 1570 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "error" ) , sourceInfo: sourceInfo ( ... span: span ( 1539 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1572 ) ) ) ) + ty ( 284 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::data_ptr" ) , id: defId ( 100 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) ) , span: span ( 1662 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 286 ) ) ) , span: span ( 1663 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 132 ) ) ) , span: span ( 1664 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1660 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 216 ) , id: mirConstId ( 128 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1661 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1665 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1666 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1667 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 132 ) , span: span ( 1668 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1669 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1664 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 286 ) , span: span ( 1663 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1662 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1661 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1669 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1670 ) ) ) ) + ty ( 285 ) |-> monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts_mut::<'_, u8>" ) , id: defId ( 72 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1304 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 6 ) ) ) , span: span ( 180 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1304 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1307 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 94 ) ) ) , span: span ( 1307 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1308 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 0 ) ) ) , span: span ( 1 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1309 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 0 ) ) ) , span: span ( 1287 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1305 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 252 ) , id: mirConstId ( 156 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1306 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1311 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1311 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1311 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1310 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1313 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1314 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindRawPtr ( ty ( 249 ) , mutabilityMut ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1315 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 8 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1316 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1317 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1312 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 133 ) , span: span ( 1318 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1319 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1320 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1304 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 1306 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 94 ) , span: span ( 1307 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1308 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1309 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 134 ) , span: span ( 1314 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1319 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1320 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1321 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1322 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data_pointer" ) , sourceInfo: sourceInfo ( ... span: span ( 1323 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "metadata" ) , sourceInfo: sourceInfo ( ... span: span ( 1324 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1325 ) ) ) ) + ty ( 288 ) |-> monoItemFn ( ... name: symbol ( "core::ptr::align_offset::" ) , id: defId ( 0 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 0 ) ) ) , span: span ( 1 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 3 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 4 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 1 ) ) .Branches , otherwise: basicBlockIdx ( 5 ) ) ) , span: span ( 0 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 6 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 5 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 8 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 8 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 7 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 9 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 9 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 7 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpRem , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 12 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 10 ) ) ) , span: span ( 11 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 14 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 14 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 15 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandConstant ( constOperand ( ... span: span ( 16 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 15 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 17 ) ) statement ( ... kind: statementKindStorageDead ( local ( 10 ) ) , span: span ( 18 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 18 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 19 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 20 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 20 ) ) statement ( ... kind: statementKindIntrinsic ( nonDivergingIntrinsicAssume ( operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 21 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 22 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpRem , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 23 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 7 ) ) .Branches , otherwise: basicBlockIdx ( 8 ) ) ) , span: span ( 13 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 24 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 2 ) , id: mirConstId ( 3 ) ) ) ) , args: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionUnreachable ) , span: span ( 25 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 27 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 27 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 9 ) ) , span: span ( 26 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 30 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 28 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 3 ) , id: mirConstId ( 4 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 11 ) ) , unwind: unwindActionUnreachable ) , span: span ( 29 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 31 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 3 ) , id: mirConstId ( 4 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 12 ) ) , unwind: unwindActionUnreachable ) , span: span ( 32 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 33 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 33 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 14 ) ) .Branches , otherwise: basicBlockIdx ( 13 ) ) ) , span: span ( 33 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 35 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 15 ) ) , span: span ( 34 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 36 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 15 ) ) , span: span ( 34 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 38 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 39 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 39 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShlUnchecked , operandConstant ( constOperand ( ... span: span ( 40 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 41 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 42 ) ) statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 43 ) ) statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 44 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 45 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 46 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 43 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 47 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 16 ) ) .Branches , otherwise: basicBlockIdx ( 18 ) ) ) , span: span ( 37 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 50 ) ) statement ( ... kind: statementKindStorageLive ( local ( 23 ) ) , span: span ( 51 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 51 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShrUnchecked , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 52 ) ) statement ( ... kind: statementKindStorageDead ( local ( 23 ) ) , span: span ( 53 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 54 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 55 ) ) statement ( ... kind: statementKindStorageLive ( local ( 26 ) ) , span: span ( 56 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 56 ) ) statement ( ... kind: statementKindStorageLive ( local ( 27 ) ) , span: span ( 57 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 57 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShrUnchecked , operandMove ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 58 ) ) statement ( ... kind: statementKindStorageDead ( local ( 27 ) ) , span: span ( 59 ) ) statement ( ... kind: statementKindStorageDead ( local ( 26 ) ) , span: span ( 59 ) ) statement ( ... kind: statementKindStorageLive ( local ( 29 ) ) , span: span ( 60 ) ) statement ( ... kind: statementKindStorageLive ( local ( 30 ) ) , span: span ( 61 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 30 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 61 ) ) statement ( ... kind: statementKindStorageLive ( local ( 31 ) ) , span: span ( 62 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 31 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 62 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 29 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShrUnchecked , operandMove ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 31 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 60 ) ) statement ( ... kind: statementKindStorageDead ( local ( 31 ) ) , span: span ( 63 ) ) statement ( ... kind: statementKindStorageDead ( local ( 30 ) ) , span: span ( 63 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 29 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 64 ) ) statement ( ... kind: statementKindStorageDead ( local ( 29 ) ) , span: span ( 65 ) ) statement ( ... kind: statementKindStorageLive ( local ( 32 ) ) , span: span ( 66 ) ) statement ( ... kind: statementKindStorageLive ( local ( 33 ) ) , span: span ( 67 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 48 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 4 ) , id: mirConstId ( 5 ) ) ) ) , args: operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 33 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 17 ) ) , unwind: unwindActionContinue ) , span: span ( 49 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 32 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpMul , operandCopy ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 33 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 66 ) ) statement ( ... kind: statementKindStorageDead ( local ( 33 ) ) , span: span ( 68 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandMove ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 69 ) ) statement ( ... kind: statementKindStorageDead ( local ( 32 ) ) , span: span ( 70 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 71 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 50 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 73 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 73 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 71 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 72 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 72 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 74 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 75 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 76 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 77 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 78 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 79 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 80 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 81 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 82 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 14 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 15 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 83 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 20 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 84 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 30 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 85 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 86 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 33 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 87 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 39 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 43 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 44 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 88 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 51 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 89 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 90 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 56 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 57 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 91 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 60 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 61 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 62 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 66 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 67 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "p" ) , sourceInfo: sourceInfo ( ... span: span ( 75 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 76 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "stride" ) , sourceInfo: sourceInfo ( ... span: span ( 77 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "addr" ) , sourceInfo: sourceInfo ( ... span: span ( 78 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "a_minus_one" ) , sourceInfo: sourceInfo ( ... span: span ( 79 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "p_mod_a" ) , sourceInfo: sourceInfo ( ... span: span ( 80 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "a_mod_stride" ) , sourceInfo: sourceInfo ( ... span: span ( 81 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "aligned_address" ) , sourceInfo: sourceInfo ( ... span: span ( 82 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "byte_offset" ) , sourceInfo: sourceInfo ( ... span: span ( 83 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "addr_mod_stride" ) , sourceInfo: sourceInfo ( ... span: span ( 84 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "gcdpow" ) , sourceInfo: sourceInfo ( ... span: span ( 30 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "x" ) , sourceInfo: sourceInfo ( ... span: span ( 85 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "y" ) , sourceInfo: sourceInfo ( ... span: span ( 86 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "gcd" ) , sourceInfo: sourceInfo ( ... span: span ( 87 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "a2" ) , sourceInfo: sourceInfo ( ... span: span ( 88 ) , scope: sourceScope ( 13 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "a2minus1" ) , sourceInfo: sourceInfo ( ... span: span ( 89 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "s2" ) , sourceInfo: sourceInfo ( ... span: span ( 90 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "minusp2" ) , sourceInfo: sourceInfo ( ... span: span ( 91 ) , scope: sourceScope ( 16 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 19 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 94 ) ) ) ) + ty ( 287 ) |-> monoItemFn ( ... name: symbol ( "core::array::equality::::eq" ) , id: defId ( 78 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1389 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 255 ) , id: mirConstId ( 161 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1390 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1391 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1392 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1393 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1394 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1393 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1394 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1395 ) ) ) ) + ty ( 289 ) |-> monoItemFn ( ... name: symbol ( "core::slice::Iter::<'_, [u8; 32]>::new" ) , id: defId ( 84 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1428 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1429 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1430 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 68 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1431 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 1432 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 167 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1433 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1434 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1435 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1427 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1427 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 1437 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1438 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1439 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , ty ( 258 ) ) ) , span: span ( 1440 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 583 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1441 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 1438 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1442 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1444 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1444 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 86 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) genericArgKindType ( ty ( 167 ) ) .GenericArgs , someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 3 ) ) , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 259 ) , id: mirConstId ( 164 ) ) ) ) .Operands ) ) , span: span ( 1445 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1446 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1447 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1443 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 108 ) , span: span ( 1448 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 70 ) , span: span ( 1449 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1450 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1451 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 261 ) , span: span ( 1429 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1435 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 258 ) , span: span ( 1438 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 258 ) , span: span ( 1439 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1444 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 74 ) , span: span ( 1452 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1432 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 1449 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1450 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 1451 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "end_or_len" ) , sourceInfo: sourceInfo ( ... span: span ( 1435 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 1453 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 1454 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1455 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "addr" ) , sourceInfo: sourceInfo ( ... span: span ( 1457 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 585 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 586 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1458 ) ) ) ) + ty ( 228 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_unchecked::" ) , id: defId ( 66 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1207 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1208 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"R\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 144 ) ) ) ) ) ) , span: span ( 1206 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1206 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1210 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1211 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1212 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 230 ) , id: mirConstId ( 143 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1213 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 233 ) ) ) , span: span ( 1214 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1215 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1216 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1209 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 41 ) , span: span ( 1217 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1218 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1206 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1207 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1210 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 1215 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 233 ) , span: span ( 1214 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1213 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1218 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1219 ) ) ) ) + ty ( 229 ) |-> monoItemFn ( ... name: symbol ( "core::result::Result::<&spl_token_interface::state::mint::Mint, pinocchio::program_error::ProgramError>::and_then::<&spl_token_interface::state::mint::Mint, {closure@p-token/src/spl_token_interface/mod.rs:1481:23: 1481:30}>" ) , id: defId ( 6 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 127 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 126 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 127 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 129 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 130 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 128 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 39 ) ) .ProjectionElems ) ) ) ) , span: span ( 133 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 132 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 132 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 131 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 40 ) , id: mirConstId ( 13 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 132 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 134 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 134 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 134 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 135 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 41 ) , span: span ( 136 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 41 ) , span: span ( 137 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 42 ) , span: span ( 138 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 139 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 133 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 42 ) , span: span ( 131 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 43 ) , span: span ( 132 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 129 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 137 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 138 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 133 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 129 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 140 ) ) ) ) + ty ( 226 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_unchecked::" ) , id: defId ( 66 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1207 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1208 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xa5\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 142 ) ) ) ) ) ) , span: span ( 1206 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1206 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1210 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1211 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1212 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 230 ) , id: mirConstId ( 143 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1213 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 231 ) ) ) , span: span ( 1214 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1215 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1216 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1209 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 26 ) , span: span ( 1217 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1218 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1206 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1207 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1210 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1215 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 231 ) , span: span ( 1214 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1213 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1218 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1219 ) ) ) ) + ty ( 224 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_unchecked::" ) , id: defId ( 66 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1207 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1208 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"c\x01\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 102 ) ) ) ) ) ) , span: span ( 1206 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1206 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1210 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1211 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1212 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 230 ) , id: mirConstId ( 143 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1213 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 232 ) ) ) , span: span ( 1214 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1215 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1216 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1209 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1209 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 36 ) , span: span ( 1217 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1218 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1206 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1207 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1210 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 1215 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 232 ) , span: span ( 1214 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1213 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1218 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1219 ) ) ) ) + ty ( 227 ) |-> monoItemFn ( ... name: symbol ( "core::result::Result::<&spl_token_interface::state::account::Account, pinocchio::program_error::ProgramError>::and_then::<&spl_token_interface::state::account::Account, {closure@p-token/src/spl_token_interface/mod.rs:1481:23: 1481:30}>" ) , id: defId ( 6 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 127 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 126 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 127 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 129 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 130 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 128 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 24 ) ) .ProjectionElems ) ) ) ) , span: span ( 133 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 132 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 132 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 131 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 25 ) , id: mirConstId ( 10 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 132 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 134 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 134 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 134 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 135 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 26 ) , span: span ( 136 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 26 ) , span: span ( 137 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 27 ) , span: span ( 138 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 139 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 133 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 27 ) , span: span ( 131 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 28 ) , span: span ( 132 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 129 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 137 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 138 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 133 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 129 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 140 ) ) ) ) + ty ( 225 ) |-> monoItemFn ( ... name: symbol ( "core::result::Result::<&spl_token_interface::state::multisig::Multisig, pinocchio::program_error::ProgramError>::and_then::<&spl_token_interface::state::multisig::Multisig, {closure@p-token/src/spl_token_interface/mod.rs:1481:23: 1481:30}>" ) , id: defId ( 6 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 127 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 126 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 127 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 129 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 130 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 128 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 34 ) ) .ProjectionElems ) ) ) ) , span: span ( 133 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 132 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 132 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 131 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 35 ) , id: mirConstId ( 12 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 132 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 134 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 134 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 134 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 135 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 36 ) , span: span ( 136 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 36 ) , span: span ( 137 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 37 ) , span: span ( 138 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 139 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 133 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 37 ) , span: span ( 131 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 38 ) , span: span ( 132 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 129 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 137 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 138 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 133 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 129 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 140 ) ) ) ) + ty ( 221 ) |-> monoItemFn ( ... name: symbol ( "core::num::::to_le_bytes" ) , id: defId ( 75 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 19 ) ) ) , span: span ( 1358 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1357 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 19 ) , span: span ( 1359 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1360 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1360 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1361 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1362 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1363 ) ) ) ) + ty ( 208 ) |-> monoItemFn ( ... name: symbol ( "core::cmp::min::" ) , id: defId ( 92 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1594 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 278 ) , id: mirConstId ( 197 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1595 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1596 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 1597 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1598 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1599 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "v1" ) , sourceInfo: sourceInfo ( ... span: span ( 1598 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v2" ) , sourceInfo: sourceInfo ( ... span: span ( 1599 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1600 ) ) ) ) + ty ( 209 ) |-> monoItemFn ( ... name: symbol ( " as core::iter::IntoIterator>::into_iter" ) , id: defId ( 32 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 483 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 482 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 71 ) , span: span ( 484 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 485 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 485 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 486 ) ) ) ) + ty ( 200 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::is_signer" ) , id: defId ( 53 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 988 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 988 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 988 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionUnreachable ) , span: span ( 988 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 988 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 990 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 107 ) ) ) ) ) ) , span: span ( 991 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 989 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 992 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 993 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 993 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 988 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 988 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 993 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 994 ) ) ) ) + ty ( 206 ) |-> monoItemFn ( ... name: symbol ( "core::ptr::mut_ptr::::add" ) , id: defId ( 40 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 583 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 582 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 132 ) , span: span ( 584 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 585 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 586 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 585 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 586 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 587 ) ) ) ) + ty ( 214 ) |-> monoItemFn ( ... name: symbol ( "core::mem::MaybeUninit::::assume_init_ref" ) , id: defId ( 35 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 540 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 120 ) , id: mirConstId ( 51 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 541 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 543 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 544 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 545 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 121 ) ) ) , span: span ( 546 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 544 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 3 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 547 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 548 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 542 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 62 ) , span: span ( 549 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 122 ) , span: span ( 550 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 541 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 121 ) , span: span ( 543 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 123 ) , span: span ( 551 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 550 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 552 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 553 ) ) ) ) + ty ( 215 ) |-> monoItemFn ( ... name: symbol ( "::clone" ) , id: defId ( 95 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 1621 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1622 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 56 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1623 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1620 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 124 ) , span: span ( 1624 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1625 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1622 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 283 ) , span: span ( 1621 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1625 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1626 ) ) ) ) + ty ( 212 ) |-> monoItemFn ( ... name: symbol ( "core::mem::size_of::" ) , id: defId ( 39 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 50 ) ) ) , span: span ( 1 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 579 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 580 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 581 ) ) ) ) + ty ( 213 ) |-> monoItemFn ( ... name: symbol ( "core::mem::MaybeUninit::::write" ) , id: defId ( 36 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 556 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 557 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 37 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 124 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 558 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 38 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 124 ) ) .GenericArgs , noUserTypeAnnotationIndex , someFieldIdx ( fieldIdx ( 1 ) ) ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 559 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 560 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 561 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 562 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 554 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 120 ) , id: mirConstId ( 51 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 555 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 564 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 565 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 566 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 125 ) ) ) , span: span ( 567 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 565 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 568 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 569 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 563 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 126 ) , span: span ( 570 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 127 ) , span: span ( 571 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 124 ) , span: span ( 572 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 128 ) , span: span ( 556 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 129 ) , span: span ( 557 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 555 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 125 ) , span: span ( 564 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 130 ) , span: span ( 573 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 571 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 572 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 574 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "value" ) , sourceInfo: sourceInfo ( ... span: span ( 575 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 576 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 577 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 578 ) ) ) ) + ty ( 210 ) |-> monoItemFn ( ... name: symbol ( "core::iter::range::>::next" ) , id: defId ( 106 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1715 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 290 ) , id: mirConstId ( 206 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1716 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1717 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 73 ) , span: span ( 1718 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 220 ) , span: span ( 1719 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1719 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1720 ) ) ) ) + ty ( 211 ) |-> monoItemFn ( ... name: symbol ( "core::ptr::const_ptr::::align_offset" ) , id: defId ( 103 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 311 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 306 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 84 ) , id: mirConstId ( 25 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionUnreachable ) , span: span ( 307 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1683 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1681 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 288 ) , id: mirConstId ( 203 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1682 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1683 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1686 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 1687 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 9 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 204 ) ) ) ) , ty ( 90 ) ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 340 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 91 ) , id: mirConstId ( 30 ) ) ) ) , ty ( 92 ) ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 22 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 93 ) , id: mirConstId ( 31 ) ) ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 341 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 342 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 342 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1684 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 88 ) , id: mirConstId ( 28 ) ) ) ) , args: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 1685 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1688 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 1 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 1683 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 1689 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1690 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1691 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 72 ) , span: span ( 1685 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 95 ) , span: span ( 1686 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 311 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 90 ) , span: span ( 338 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 92 ) , span: span ( 340 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1690 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 1691 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "ret" ) , sourceInfo: sourceInfo ( ... span: span ( 1692 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 0 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 361 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 362 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "pieces" ) , sourceInfo: sourceInfo ( ... span: span ( 363 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1687 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 9 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 204 ) ) ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1693 ) ) ) ) + ty ( 216 ) |-> monoItemFn ( ... name: symbol ( "core::mem::size_of::" ) , id: defId ( 39 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 131 ) ) ) , span: span ( 1 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 579 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 580 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 581 ) ) ) ) + ty ( 217 ) |-> monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts::<'_, u8>" ) , id: defId ( 71 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1281 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 6 ) ) ) , span: span ( 180 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1281 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1284 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 94 ) ) ) , span: span ( 1284 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1285 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 0 ) ) ) , span: span ( 1 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1286 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 0 ) ) ) , span: span ( 1287 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1282 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 248 ) , id: mirConstId ( 155 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1283 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1289 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1289 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1289 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1288 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1291 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1292 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindRawPtr ( ty ( 249 ) , mutabilityNot ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1293 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 8 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1294 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1295 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1290 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 81 ) , span: span ( 1296 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1297 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1298 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1281 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 1283 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 94 ) , span: span ( 1284 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1285 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1286 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 82 ) , span: span ( 1292 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1297 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1298 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1299 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1300 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data_pointer" ) , sourceInfo: sourceInfo ( ... span: span ( 1301 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "metadata" ) , sourceInfo: sourceInfo ( ... span: span ( 1302 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1303 ) ) ) ) + ty ( 238 ) |-> monoItemFn ( ... name: symbol ( "core::slice::]>::as_ptr" ) , id: defId ( 42 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 287 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 265 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 123 ) ) ) , span: span ( 597 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 598 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 596 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 123 ) , span: span ( 599 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 135 ) , span: span ( 291 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 136 ) , span: span ( 287 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 291 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 600 ) ) ) ) + ty ( 239 ) |-> monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts::<'_, pinocchio::account_info::AccountInfo>" ) , id: defId ( 71 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1281 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpUbChecks , ty ( 6 ) ) ) , span: span ( 180 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1281 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1284 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 94 ) ) ) , span: span ( 1284 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1285 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpSizeOf , ty ( 124 ) ) ) , span: span ( 1 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1286 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 124 ) ) ) , span: span ( 1287 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1282 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 248 ) , id: mirConstId ( 155 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1283 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1289 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1289 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1289 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1288 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1291 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1292 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindRawPtr ( ty ( 250 ) , mutabilityNot ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1293 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 8 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1294 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1295 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1290 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 65 ) , span: span ( 1296 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1297 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1298 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1281 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 1283 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 94 ) , span: span ( 1284 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1285 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1286 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 251 ) , span: span ( 1292 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1297 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1298 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 1299 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1300 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "data_pointer" ) , sourceInfo: sourceInfo ( ... span: span ( 1301 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "metadata" ) , sourceInfo: sourceInfo ( ... span: span ( 1302 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1303 ) ) ) ) + ty ( 234 ) |-> monoItemFn ( ... name: symbol ( "core::result::Result::<&mut spl_token_interface::state::account::Account, pinocchio::program_error::ProgramError>::and_then::<&mut spl_token_interface::state::account::Account, {closure@p-token/src/spl_token_interface/mod.rs:1513:23: 1513:34}>" ) , id: defId ( 6 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 127 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 126 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 127 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 129 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 130 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 128 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) ) , span: span ( 133 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 131 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 132 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 132 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 131 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 30 ) , id: mirConstId ( 11 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 132 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 134 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 134 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 134 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 135 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 31 ) , span: span ( 136 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 31 ) , span: span ( 137 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 32 ) , span: span ( 138 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 139 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 133 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 32 ) , span: span ( 131 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 33 ) , span: span ( 132 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 129 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 137 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 138 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 133 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 129 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 140 ) ) ) ) + ty ( 235 ) |-> monoItemFn ( ... name: symbol ( "core::slice::::as_mut_ptr" ) , id: defId ( 41 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 589 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 590 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 132 ) ) ) , span: span ( 591 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 592 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 588 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 132 ) , span: span ( 593 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 594 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 134 ) , span: span ( 589 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 594 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 595 ) ) ) ) + ty ( 237 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::entrypoint::deserialize::<'_, 128>" ) , id: defId ( 55 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1003 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1003 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1004 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1001 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1002 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 207 ) ) ) , span: span ( 1006 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 140 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 141 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 140 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 142 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 50 ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 143 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 142 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1005 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 144 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 143 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 145 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 144 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1005 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1005 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 145 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 142 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 64 ) , unwind: unwindActionUnreachable ) , span: span ( 1005 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1007 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 10 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 3 ) , unwind: unwindActionContinue ) , span: span ( 1007 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 10 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1007 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGt , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1009 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1008 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 48 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 1008 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1010 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 208 ) , id: mirConstId ( 118 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1011 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x80\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 119 ) ) ) ) .Operands , destination: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 5 ) ) , unwind: unwindActionContinue ) , span: span ( 1012 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 50 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 1014 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1015 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1013 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 209 ) , id: mirConstId ( 120 ) ) ) ) , args: operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 6 ) ) , unwind: unwindActionContinue ) , span: span ( 1013 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1013 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1016 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) , span: span ( 1013 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1013 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 210 ) , id: mirConstId ( 121 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 1013 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) ) , span: span ( 1013 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 11 ) ) branch ( 1 , basicBlockIdx ( 10 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 1013 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 17 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1019 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1020 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1017 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 12 ) ) , unwind: unwindActionContinue ) , span: span ( 1018 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 57 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 50 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1022 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1021 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 209 ) , id: mirConstId ( 120 ) ) ) ) , args: operandMove ( place ( ... local: local ( 57 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 56 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 30 ) ) , unwind: unwindActionContinue ) , span: span ( 1021 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , ty ( 205 ) ) ) , span: span ( 1024 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 134 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 135 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 134 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 136 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 137 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 136 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1023 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 138 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 135 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 137 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 139 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 138 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1023 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1023 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 139 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 136 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 135 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 63 ) , unwind: unwindActionUnreachable ) , span: span ( 1023 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 128 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 129 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 128 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 130 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 131 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 130 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1025 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 132 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 129 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 131 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1025 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 133 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 132 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1025 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1025 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 133 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 130 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 129 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 62 ) , unwind: unwindActionUnreachable ) , span: span ( 1025 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1026 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 27 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 15 ) , unwind: unwindActionContinue ) , span: span ( 1026 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 27 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1026 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 122 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 123 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 122 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 124 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 125 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 124 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1027 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 126 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 123 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 125 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 127 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 126 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1027 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1027 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 127 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 124 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 123 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 61 ) , unwind: unwindActionUnreachable ) , span: span ( 1027 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 30 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1030 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 31 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1028 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00(\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 122 ) ) ) ) ) ) , span: span ( 1029 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 31 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1028 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00(\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 122 ) ) ) ) ) , target: basicBlockIdx ( 17 ) , unwind: unwindActionContinue ) , span: span ( 1029 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 31 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1029 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 34 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1034 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 33 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerWithExposedProvenance , operandMove ( place ( ... local: local ( 34 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 1035 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1031 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 211 ) , id: mirConstId ( 123 ) ) ) ) , args: operandMove ( place ( ... local: local ( 33 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1032 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) .Operands , destination: place ( ... local: local ( 32 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 18 ) ) , unwind: unwindActionContinue ) , span: span ( 1033 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 35 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1036 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 35 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 19 ) , unwind: unwindActionContinue ) , span: span ( 1036 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 35 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1036 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1037 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 36 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 20 ) ) , unwind: unwindActionContinue ) , span: span ( 1038 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 37 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1039 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 37 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 21 ) , unwind: unwindActionContinue ) , span: span ( 1039 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 37 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1039 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 40 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1040 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 41 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 40 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1040 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 41 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 40 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 22 ) , unwind: unwindActionContinue ) , span: span ( 1040 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 39 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindTwoPhaseBorrow ) , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemIndex ( local ( 20 ) ) .ProjectionElems ) ) ) , span: span ( 1040 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 42 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 56 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1043 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1041 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 213 ) , id: mirConstId ( 125 ) ) ) ) , args: operandMove ( place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 42 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 38 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 7 ) ) , unwind: unwindActionContinue ) , span: span ( 1042 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1044 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 43 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 24 ) ) , unwind: unwindActionContinue ) , span: span ( 1045 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 44 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1046 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 44 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 25 ) , unwind: unwindActionContinue ) , span: span ( 1046 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 44 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1046 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 47 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1047 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 48 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 47 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1047 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 48 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 47 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 26 ) , unwind: unwindActionContinue ) , span: span ( 1047 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 46 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindTwoPhaseBorrow ) , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemIndex ( local ( 20 ) ) .ProjectionElems ) ) ) , span: span ( 1047 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 116 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 117 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 116 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 118 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 119 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1048 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 120 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 117 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 119 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 121 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 120 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1048 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1048 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 121 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 117 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 60 ) , unwind: unwindActionUnreachable ) , span: span ( 1048 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 51 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemIndex ( local ( 52 ) ) .ProjectionElems ) ) ) , span: span ( 1051 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1049 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 214 ) , id: mirConstId ( 126 ) ) ) ) , args: operandMove ( place ( ... local: local ( 51 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 50 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 28 ) ) , unwind: unwindActionContinue ) , span: span ( 1050 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1052 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 215 ) , id: mirConstId ( 127 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 50 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 49 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 29 ) ) , unwind: unwindActionContinue ) , span: span ( 1053 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1054 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 213 ) , id: mirConstId ( 125 ) ) ) ) , args: operandMove ( place ( ... local: local ( 46 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 49 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 45 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 7 ) ) , unwind: unwindActionContinue ) , span: span ( 1055 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 58 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 56 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1021 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 31 ) ) , span: span ( 1056 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 60 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) ) , span: span ( 1021 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1021 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 210 ) , id: mirConstId ( 121 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 60 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 59 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 32 ) ) , unwind: unwindActionContinue ) , span: span ( 1021 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 61 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 59 ) , projection: .ProjectionElems ) ) ) , span: span ( 1021 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 61 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 34 ) ) branch ( 1 , basicBlockIdx ( 33 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 1021 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 64 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1059 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1057 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 64 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 63 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 35 ) ) , unwind: unwindActionContinue ) , span: span ( 1058 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1061 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 49 ) ) , span: span ( 1060 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 62 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 63 ) , projection: .ProjectionElems ) ) , ty ( 205 ) ) ) , span: span ( 1063 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 110 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 111 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 110 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 112 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 113 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 112 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1062 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 114 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 111 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 113 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 115 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 114 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1062 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1062 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 115 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 112 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 111 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 59 ) , unwind: unwindActionUnreachable ) , span: span ( 1062 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1064 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 216 ) , id: mirConstId ( 128 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 67 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 37 ) ) , unwind: unwindActionContinue ) , span: span ( 1065 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 68 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 67 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1066 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 68 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 67 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 38 ) , unwind: unwindActionContinue ) , span: span ( 1066 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 68 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1066 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 104 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 105 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 104 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 106 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 107 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 106 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1067 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 108 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 105 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 107 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 109 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 108 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1067 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1067 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 109 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 106 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 105 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 58 ) , unwind: unwindActionUnreachable ) , span: span ( 1067 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 71 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1070 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 72 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1068 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00(\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 122 ) ) ) ) ) ) , span: span ( 1069 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 72 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1068 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00(\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 122 ) ) ) ) ) , target: basicBlockIdx ( 40 ) , unwind: unwindActionContinue ) , span: span ( 1069 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 72 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1069 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 75 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1074 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 74 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerWithExposedProvenance , operandMove ( place ( ... local: local ( 75 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 1075 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1071 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 211 ) , id: mirConstId ( 123 ) ) ) ) , args: operandMove ( place ( ... local: local ( 74 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1072 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) .Operands , destination: place ( ... local: local ( 73 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 41 ) ) , unwind: unwindActionContinue ) , span: span ( 1073 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 76 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 73 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1076 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 76 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 73 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 42 ) , unwind: unwindActionContinue ) , span: span ( 1076 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 76 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1076 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1077 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 77 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 43 ) ) , unwind: unwindActionContinue ) , span: span ( 1078 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 78 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 77 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1079 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 78 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 77 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 44 ) , unwind: unwindActionContinue ) , span: span ( 1079 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 78 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1079 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 31 ) ) , span: span ( 1080 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1081 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 79 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 46 ) ) , unwind: unwindActionContinue ) , span: span ( 1082 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 80 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1083 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 80 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 47 ) , unwind: unwindActionContinue ) , span: span ( 1083 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 80 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1083 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 31 ) ) , span: span ( 1080 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1084 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1084 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 49 ) ) , span: span ( 1060 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 85 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1087 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1085 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 85 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 84 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 50 ) ) , unwind: unwindActionContinue ) , span: span ( 1086 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 83 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 84 ) , projection: .ProjectionElems ) ) , ty ( 207 ) ) ) , span: span ( 1089 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 98 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 83 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 99 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 98 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 100 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 50 ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 101 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 100 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1088 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 102 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 99 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 101 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 103 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 102 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1088 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1088 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 103 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 100 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 99 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 57 ) , unwind: unwindActionUnreachable ) , span: span ( 1088 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 87 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 86 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1090 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 87 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 86 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 52 ) , unwind: unwindActionContinue ) , span: span ( 1090 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 87 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1090 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 91 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1093 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1091 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 91 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 90 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 53 ) ) , unwind: unwindActionContinue ) , span: span ( 1092 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 89 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 90 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 1092 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1094 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 217 ) , id: mirConstId ( 129 ) ) ) ) , args: operandMove ( place ( ... local: local ( 89 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 88 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 54 ) ) , unwind: unwindActionContinue ) , span: span ( 1095 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 92 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1096 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 92 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 55 ) , unwind: unwindActionContinue ) , span: span ( 1096 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 92 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 1096 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 96 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1099 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1097 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 206 ) , id: mirConstId ( 117 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 96 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 95 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 56 ) ) , unwind: unwindActionContinue ) , span: span ( 1098 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 94 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 95 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 1101 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 93 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 94 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1102 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 97 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1103 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 93 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 97 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 88 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1104 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1100 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 82 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 83 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1088 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 81 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 82 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1107 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1105 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 86 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 51 ) ) , unwind: unwindActionContinue ) , span: span ( 1106 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 70 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 62 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 8 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 1067 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 69 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 70 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1108 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 71 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 69 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1070 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 71 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 69 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 39 ) , unwind: unwindActionContinue ) , span: span ( 1070 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 66 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 62 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 1062 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 65 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 66 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1110 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 130 ) ) ) ) ) ) , span: span ( 1109 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 65 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 45 ) ) .Branches , otherwise: basicBlockIdx ( 36 ) ) ) , span: span ( 1109 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 53 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 1048 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 52 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 53 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1111 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 54 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1051 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 55 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1051 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 55 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 27 ) , unwind: unwindActionContinue ) , span: span ( 1051 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 29 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 8 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 1027 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 29 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1112 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 30 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1030 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 30 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 16 ) , unwind: unwindActionContinue ) , span: span ( 1030 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1115 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 107 ) ) ) ) ) ) , span: span ( 1025 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1113 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 216 ) , id: mirConstId ( 128 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 14 ) ) , unwind: unwindActionContinue ) , span: span ( 1114 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 1023 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1117 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 130 ) ) ) ) ) ) , span: span ( 1116 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 23 ) ) .Branches , otherwise: basicBlockIdx ( 13 ) ) ) , span: span ( 1116 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1005 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 1120 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1118 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 212 ) , id: mirConstId ( 124 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1119 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 218 ) , span: span ( 1121 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1122 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 219 ) , span: span ( 1123 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1124 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1125 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 207 ) , span: span ( 1006 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1002 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1004 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1119 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1007 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1126 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1008 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1127 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1013 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1015 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1013 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 73 ) , span: span ( 1013 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 220 ) , span: span ( 1013 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 1016 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1019 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1024 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1018 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1020 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1116 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1114 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1026 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1112 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1030 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1029 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1033 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1035 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1034 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1036 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1038 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1039 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 126 ) , span: span ( 1042 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 127 ) , span: span ( 1040 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1040 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1040 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 124 ) , span: span ( 1043 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1045 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1046 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 126 ) , span: span ( 1055 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 127 ) , span: span ( 1047 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1047 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1047 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 124 ) , span: span ( 1053 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1050 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 122 ) , span: span ( 1051 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1111 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1051 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1051 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1021 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1022 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 1021 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 73 ) , span: span ( 1021 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 220 ) , span: span ( 1021 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 1056 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1063 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1058 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1059 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1109 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1065 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1066 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1108 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1070 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1069 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1073 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1075 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1074 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1076 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1078 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1079 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1082 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1083 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1128 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 207 ) , span: span ( 1089 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1086 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1087 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1106 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1090 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1129 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1092 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1092 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1093 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 116 ) , span: span ( 1096 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1102 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1101 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1098 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1099 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1103 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1088 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1067 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1062 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1048 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1027 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1025 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1023 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1005 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1005 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "input" ) , sourceInfo: sourceInfo ( ... span: span ( 1122 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 1123 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "offset" ) , sourceInfo: sourceInfo ( ... span: span ( 1124 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "total_accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 1125 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "processed" ) , sourceInfo: sourceInfo ( ... span: span ( 1126 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "processed" ) , sourceInfo: sourceInfo ( ... span: span ( 1127 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 1013 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "i" ) , sourceInfo: sourceInfo ( ... span: span ( 1019 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 1130 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 1021 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 1131 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "instruction_data_len" ) , sourceInfo: sourceInfo ( ... span: span ( 1128 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 1129 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 88 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "program_id" ) , sourceInfo: sourceInfo ( ... span: span ( 1132 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 93 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1133 ) ) ) ) + ty ( 230 ) |-> monoItemFn ( ... name: symbol ( "core::slice::::as_ptr" ) , id: defId ( 42 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 287 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 265 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 597 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 598 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 596 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 5 ) , span: span ( 599 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 291 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 82 ) , span: span ( 287 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 291 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 600 ) ) ) ) + ty ( 252 ) |-> monoItemFn ( ... name: symbol ( "core::slice::from_raw_parts_mut::precondition_check" ) , id: defId ( 23 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 369 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 370 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 370 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 310 ) ) statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 311 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 306 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 84 ) , id: mirConstId ( 25 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 10 ) ) , unwind: unwindActionUnreachable ) , span: span ( 307 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 371 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 372 ) ) statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 372 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 315 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 316 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 312 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 11 ) ) .Branches , otherwise: basicBlockIdx ( 12 ) ) ) , span: span ( 312 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 374 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 374 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 373 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 371 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 375 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 86 ) , id: mirConstId ( 26 ) ) ) ) , args: operandConstant ( constOperand ( ... span: span ( 376 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\xa6\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 3 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 87 ) , id: mirConstId ( 34 ) ) ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionUnreachable ) , span: span ( 377 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 322 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 323 ) ) statement ( ... kind: statementKindStorageLive ( local ( 18 ) ) , span: span ( 324 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 325 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 326 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 327 ) ) statement ( ... kind: statementKindStorageDead ( local ( 18 ) ) , span: span ( 324 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 328 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 329 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 310 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 369 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 322 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 310 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 369 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 330 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 331 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 332 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 333 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 332 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 331 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 334 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 7 ) ) ) , span: span ( 322 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 330 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 337 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 339 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 29 ) ) ) ) , ty ( 90 ) ) ) , span: span ( 338 ) ) statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandConstant ( constOperand ( ... span: span ( 340 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 2 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 91 ) , id: mirConstId ( 30 ) ) ) ) , ty ( 92 ) ) ) , span: span ( 340 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 22 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 93 ) , id: mirConstId ( 31 ) ) ) ) operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 341 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 342 ) ) statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 342 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 335 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 88 ) , id: mirConstId ( 28 ) ) ) ) , args: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionTerminate ) , span: span ( 336 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 330 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 344 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\xff" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 2 ) ) ) ) ) ) , span: span ( 344 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 14 ) ) , span: span ( 343 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , expected: false , msg: assertMessageDivisionByZero ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\x7f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 32 ) ) ) ) ) , target: basicBlockIdx ( 13 ) , unwind: unwindActionTerminate ) , span: span ( 345 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpDiv , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xff\xff\xff\xff\xff\xff\xff\x7f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 32 ) ) ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 345 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 14 ) ) , span: span ( 343 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 346 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 346 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLe , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 347 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 348 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 349 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 372 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 372 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 378 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 94 ) , span: span ( 379 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 379 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 379 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 379 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 369 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 370 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 372 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 377 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 323 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 336 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 95 ) , span: span ( 337 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 331 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 352 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 332 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 7 ) , span: span ( 311 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 90 ) , span: span ( 338 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 92 ) , span: span ( 340 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 5 ) , span: span ( 353 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 315 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 312 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 346 ) , mut: mutabilityMut ) .LocalDecls , argCount: 4 , varDebugInfo: varDebugInfo ( ... name: symbol ( "data" ) , sourceInfo: sourceInfo ( ... span: span ( 379 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "size" ) , sourceInfo: sourceInfo ( ... span: span ( 379 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 379 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 379 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 4 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 354 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 355 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "is_zst" ) , sourceInfo: sourceInfo ( ... span: span ( 356 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 380 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "is_zst" ) , sourceInfo: sourceInfo ( ... span: span ( 358 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 380 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 359 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "align" ) , sourceInfo: sourceInfo ( ... span: span ( 360 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 361 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 362 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "pieces" ) , sourceInfo: sourceInfo ( ... span: span ( 363 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 339 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 1 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 89 ) , id: mirConstId ( 29 ) ) ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 364 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 353 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 365 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 13 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "size" ) , sourceInfo: sourceInfo ( ... span: span ( 366 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 367 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "max_len" ) , sourceInfo: sourceInfo ( ... span: span ( 315 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 381 ) ) ) ) + ty ( 256 ) |-> monoItemFn ( ... name: symbol ( ">::spec_ne" ) , id: defId ( 81 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1412 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1405 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 104 ) ) ) , span: span ( 1405 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 257 ) , id: mirConstId ( 163 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1407 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1414 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1415 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1413 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1416 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1417 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1418 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1412 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1405 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 1417 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1418 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 1409 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1410 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1419 ) ) ) ) + ty ( 255 ) |-> monoItemFn ( ... name: symbol ( ">::spec_eq" ) , id: defId ( 80 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1405 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 104 ) ) ) , span: span ( 1405 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 257 ) , id: mirConstId ( 163 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1407 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1406 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1408 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1409 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1410 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1405 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 1409 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1410 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1411 ) ) ) ) + ty ( 139 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 45 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 45 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 45 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 46 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 47 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 45 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) + ty ( 138 ) |-> monoItemFn ( ... name: symbol ( "core::option::Option::<(&u8, &[u8])>::ok_or::" ) , id: defId ( 29 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 425 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) branch ( 1 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 424 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 425 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 427 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 427 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 45 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 280 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 426 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 426 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 45 ) ) .ProjectionElems ) ) ) ) , span: span ( 272 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 45 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 273 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 4 ) , unwind: unwindActionContinue ) , span: span ( 428 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 429 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 47 ) , span: span ( 430 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 101 ) , span: span ( 292 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 293 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 431 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 45 ) , span: span ( 272 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 427 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 292 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "err" ) , sourceInfo: sourceInfo ( ... span: span ( 293 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 272 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 432 ) ) ) ) + ty ( 137 ) |-> monoItemFn ( ... name: symbol ( "core::slice::::split_first" ) , id: defId ( 104 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1694 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGe , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1694 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1694 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 0 , minLength: 1 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 1696 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemSubslice ( ... from: 1 , to: 0 , fromEnd: true ) .ProjectionElems ) ) ) , span: span ( 1697 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1698 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1698 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 45 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1699 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1700 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1695 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 45 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1701 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1695 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1702 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 101 ) , span: span ( 1703 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1704 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1694 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1694 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 140 ) , span: span ( 1696 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1697 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 45 ) , span: span ( 1698 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1704 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "first" ) , sourceInfo: sourceInfo ( ... span: span ( 1696 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "tail" ) , sourceInfo: sourceInfo ( ... span: span ( 1697 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1705 ) ) ) ) + ty ( 179 ) |-> monoItemFn ( ... name: symbol ( "processor::check_account_owner" ) , id: defId ( 48 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 889 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 5 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 106 ) , id: mirConstId ( 100 ) ) ) ) ) ) , span: span ( 889 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 887 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 187 ) , id: mirConstId ( 99 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 888 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 888 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 890 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 169 ) , id: mirConstId ( 82 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 890 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 890 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 6 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 892 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 893 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 891 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) .Operands ) ) , span: span ( 894 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 891 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 895 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 896 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 897 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 890 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 889 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 888 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 888 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 892 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 897 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 898 ) ) ) ) + ty ( 178 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::clear_delegate" ) , id: defId ( 59 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1150 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 64 ) ) ) ) ) ) , span: span ( 1149 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1149 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 1149 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 222 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 223 ) ) projectionElemIndex ( local ( 2 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1152 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 107 ) ) ) ) ) ) , span: span ( 1153 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1151 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1154 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 1155 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1150 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1149 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1149 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1155 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1156 ) ) ) ) + ty ( 177 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::set_delegated_amount" ) , id: defId ( 62 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1176 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 221 ) , id: mirConstId ( 131 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1177 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 7 ) , ty ( 19 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1179 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1178 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1180 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 1181 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1182 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1177 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1181 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "amount" ) , sourceInfo: sourceInfo ( ... span: span ( 1182 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1183 ) ) ) ) + ty ( 176 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::delegated_amount" ) , id: defId ( 63 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 7 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 1186 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1184 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 147 ) , id: mirConstId ( 62 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1185 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1187 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1188 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1189 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1186 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1189 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1190 ) ) ) ) + ty ( 175 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 13 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 13 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 13 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 48 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) + ty ( 174 ) |-> monoItemFn ( ... name: symbol ( "processor::validate_owner" ) , id: defId ( 49 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 901 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 899 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 900 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) , span: span ( 900 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 902 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 169 ) , id: mirConstId ( 82 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 902 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 902 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 4 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 905 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 903 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 904 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 906 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 907 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 188 ) , id: mirConstId ( 101 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 6 ) ) , unwind: unwindActionContinue ) , span: span ( 908 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 910 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"c\x01\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 102 ) ) ) ) ) ) , span: span ( 909 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 41 ) ) .Branches , otherwise: basicBlockIdx ( 7 ) ) ) , span: span ( 909 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 911 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 187 ) , id: mirConstId ( 99 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 912 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) ) , span: span ( 912 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 914 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 6 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 106 ) , id: mirConstId ( 103 ) ) ) ) ) ) , span: span ( 914 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 913 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 103 ) , id: mirConstId ( 42 ) ) ) ) , args: operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 913 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 41 ) ) .Branches , otherwise: basicBlockIdx ( 10 ) ) ) , span: span ( 913 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 915 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 163 ) , id: mirConstId ( 77 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 11 ) ) , unwind: unwindActionContinue ) , span: span ( 916 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 917 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 189 ) , id: mirConstId ( 104 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 12 ) ) , unwind: unwindActionContinue ) , span: span ( 918 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 919 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 190 ) , id: mirConstId ( 105 ) ) ) ) , args: operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 13 ) ) , unwind: unwindActionContinue ) , span: span ( 919 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) , span: span ( 919 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 15 ) ) branch ( 1 , basicBlockIdx ( 16 ) ) .Branches , otherwise: basicBlockIdx ( 14 ) ) ) , span: span ( 919 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 16 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 34 ) ) .ProjectionElems ) ) ) ) , span: span ( 922 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 923 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 107 ) ) ) ) ) ) , span: span ( 923 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueRepeat ( operandConstant ( constOperand ( ... span: span ( 924 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) , span: span ( 925 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 920 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 191 ) , id: mirConstId ( 106 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 17 ) ) , unwind: unwindActionContinue ) , span: span ( 921 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 16 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 926 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 926 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 45 ) ) , unwind: unwindActionContinue ) , span: span ( 919 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 927 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 192 ) , id: mirConstId ( 108 ) ) ) ) , args: operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 18 ) ) , unwind: unwindActionContinue ) , span: span ( 927 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 927 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 19 ) ) , span: span ( 928 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) ) , span: span ( 927 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 927 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 193 ) , id: mirConstId ( 109 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 20 ) ) , unwind: unwindActionContinue ) , span: span ( 927 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 29 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) ) , span: span ( 927 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 29 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 22 ) ) branch ( 1 , basicBlockIdx ( 21 ) ) .Branches , otherwise: basicBlockIdx ( 14 ) ) ) , span: span ( 927 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 30 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 27 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 930 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 35 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 195 ) ) .ProjectionElems ) ) ) , span: span ( 931 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 38 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 932 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 37 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 38 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 933 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 36 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 50 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 934 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) operandMove ( place ( ... local: local ( 37 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 935 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 929 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 194 ) , id: mirConstId ( 110 ) ) ) ) , args: operandMove ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 34 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 23 ) ) , unwind: unwindActionContinue ) , span: span ( 929 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 58 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 937 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 59 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 21 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 938 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 57 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandMove ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 59 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 936 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 57 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 44 ) ) .Branches , otherwise: basicBlockIdx ( 40 ) ) ) , span: span ( 936 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 939 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 196 ) , id: mirConstId ( 111 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 34 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 33 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 24 ) ) , unwind: unwindActionContinue ) , span: span ( 940 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 941 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 197 ) , id: mirConstId ( 112 ) ) ) ) , args: operandMove ( place ( ... local: local ( 33 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 32 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 25 ) ) , unwind: unwindActionContinue ) , span: span ( 942 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 943 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 198 ) , id: mirConstId ( 113 ) ) ) ) , args: operandMove ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 31 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 26 ) ) , unwind: unwindActionContinue ) , span: span ( 943 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 39 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 31 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 943 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 27 ) ) , span: span ( 944 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 41 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) ) , span: span ( 943 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 943 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 199 ) , id: mirConstId ( 114 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 41 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 40 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 28 ) ) , unwind: unwindActionContinue ) , span: span ( 943 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 42 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 40 ) , projection: .ProjectionElems ) ) ) , span: span ( 943 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 42 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 19 ) ) branch ( 1 , basicBlockIdx ( 29 ) ) .Branches , otherwise: basicBlockIdx ( 14 ) ) ) , span: span ( 943 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 43 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 40 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 109 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 947 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 44 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 40 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 109 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 104 ) ) .ProjectionElems ) ) ) ) , span: span ( 948 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 46 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 44 ) , projection: .ProjectionElems ) ) ) , span: span ( 949 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 945 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 48 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 30 ) ) , unwind: unwindActionContinue ) , span: span ( 946 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 47 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 48 ) , projection: .ProjectionElems ) ) ) , span: span ( 946 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 950 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 103 ) , id: mirConstId ( 42 ) ) ) ) , args: operandMove ( place ( ... local: local ( 46 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 47 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 45 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 31 ) ) , unwind: unwindActionContinue ) , span: span ( 950 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 45 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 27 ) ) .Branches , otherwise: basicBlockIdx ( 32 ) ) ) , span: span ( 950 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 50 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 115 ) ) ) ) ) ) , span: span ( 951 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 51 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 50 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 951 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 51 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 50 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 33 ) , unwind: unwindActionContinue ) , span: span ( 951 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 49 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 23 ) , projection: projectionElemIndex ( local ( 43 ) ) .ProjectionElems ) ) ) ) , span: span ( 951 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 49 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 34 ) ) .Branches , otherwise: basicBlockIdx ( 27 ) ) ) , span: span ( 951 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 952 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 200 ) , id: mirConstId ( 116 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 52 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 35 ) ) , unwind: unwindActionContinue ) , span: span ( 953 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 37 ) ) .Branches , otherwise: basicBlockIdx ( 36 ) ) ) , span: span ( 953 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 54 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 115 ) ) ) ) ) ) , span: span ( 954 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 55 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 954 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 55 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 38 ) , unwind: unwindActionContinue ) , span: span ( 954 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 53 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 7 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 955 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 53 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 956 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: projectionElemIndex ( local ( 43 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 959 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 41 ) ) ) ) ) ) , span: span ( 960 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 56 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 957 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) ) , span: span ( 958 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 56 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 957 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) , target: basicBlockIdx ( 39 ) , unwind: unwindActionContinue ) , span: span ( 958 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 56 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 958 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 27 ) ) , span: span ( 961 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 60 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 7 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 962 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 60 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 963 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 964 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 200 ) , id: mirConstId ( 116 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 61 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 42 ) ) , unwind: unwindActionContinue ) , span: span ( 965 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 61 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 43 ) ) .Branches , otherwise: basicBlockIdx ( 44 ) ) ) , span: span ( 965 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 62 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 7 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 966 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 967 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) .Operands ) ) , span: span ( 969 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 45 ) ) , span: span ( 968 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 968 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 970 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 971 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 972 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 973 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 902 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 901 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 900 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 900 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 904 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 905 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 909 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 908 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 913 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 912 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 912 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 914 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 49 ) , span: span ( 919 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 36 ) , span: span ( 918 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 916 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 926 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 926 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 34 ) , span: span ( 922 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 974 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 201 ) , span: span ( 975 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 64 ) , span: span ( 927 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 64 ) , span: span ( 921 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 64 ) , span: span ( 927 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 202 ) , span: span ( 927 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 203 ) , span: span ( 927 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 928 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 930 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 117 ) , span: span ( 943 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 117 ) , span: span ( 942 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 108 ) , span: span ( 940 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 70 ) , span: span ( 929 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 76 ) , span: span ( 931 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 935 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 933 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 932 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 117 ) , span: span ( 943 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 111 ) , span: span ( 943 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 112 ) , span: span ( 943 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 944 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 947 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 948 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 950 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 949 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 946 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 946 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 951 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 951 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 951 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 953 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 955 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 954 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 954 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 204 ) , span: span ( 958 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 936 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 937 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 938 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 962 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 965 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 966 ) , mut: mutabilityMut ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "expected_owner" ) , sourceInfo: sourceInfo ( ... span: span ( 971 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "owner_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 972 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "signers" ) , sourceInfo: sourceInfo ( ... span: span ( 973 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "multisig" ) , sourceInfo: sourceInfo ( ... span: span ( 976 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 926 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 922 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "num_signers" ) , sourceInfo: sourceInfo ( ... span: span ( 974 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "matched" ) , sourceInfo: sourceInfo ( ... span: span ( 975 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 927 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "signer" ) , sourceInfo: sourceInfo ( ... span: span ( 930 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 943 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "position" ) , sourceInfo: sourceInfo ( ... span: span ( 947 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "key" ) , sourceInfo: sourceInfo ( ... span: span ( 948 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 44 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 977 ) ) ) ) + ty ( 173 ) |-> monoItemFn ( ... name: symbol ( " as core::cmp::PartialEq>::eq" ) , id: defId ( 30 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 434 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 433 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 434 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 434 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) branch ( 1 , basicBlockIdx ( 7 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 433 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 434 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) branch ( 1 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 433 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 435 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 41 ) ) ) ) ) ) , span: span ( 435 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 8 ) ) , span: span ( 435 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 436 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) ) ) , span: span ( 436 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 8 ) ) , span: span ( 436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 437 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) ) ) , span: span ( 437 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 8 ) ) , span: span ( 437 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 104 ) ) .ProjectionElems ) ) ) , span: span ( 439 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 104 ) ) .ProjectionElems ) ) ) , span: span ( 440 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 438 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 103 ) , id: mirConstId ( 42 ) ) ) ) , args: operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 438 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 441 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 442 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 105 ) , span: span ( 443 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 105 ) , span: span ( 444 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 445 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 446 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 447 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 439 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 440 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 443 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 444 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "l" ) , sourceInfo: sourceInfo ( ... span: span ( 439 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 440 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 448 ) ) ) ) + ty ( 172 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::delegate" ) , id: defId ( 60 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1158 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1158 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 64 ) ) ) ) ) ) , span: span ( 1157 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1157 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 1157 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 222 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 223 ) ) projectionElemIndex ( local ( 3 ) ) .ProjectionElems ) ) ) ) , span: span ( 1157 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 1159 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 222 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 1161 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1162 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1160 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1163 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1160 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1164 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 114 ) , span: span ( 1165 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1166 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1157 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1158 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1157 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1157 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1161 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1166 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1167 ) ) ) ) + ty ( 171 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 39 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 39 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 39 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 55 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 41 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) + ty ( 170 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::" ) , id: defId ( 65 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1198 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 228 ) , id: mirConstId ( 139 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1199 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1200 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 229 ) , id: mirConstId ( 140 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 42 ) , id: mirConstId ( 141 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1201 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1202 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 41 ) , span: span ( 1203 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1204 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 41 ) , span: span ( 1199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1204 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1205 ) ) ) ) + ty ( 169 ) |-> monoItemFn ( ... name: symbol ( "core::cmp::impls::::ne" ) , id: defId ( 101 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1673 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1674 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1671 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 166 ) , id: mirConstId ( 80 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1672 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1675 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1676 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 1677 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 1678 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1677 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1678 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1677 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1678 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1679 ) ) ) ) + ty ( 168 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::key" ) , id: defId ( 51 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 979 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 5 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 979 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 978 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 104 ) , span: span ( 980 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 981 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 981 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 981 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 982 ) ) ) ) + ty ( 165 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 24 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 24 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 24 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 54 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 26 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) + ty ( 164 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::" ) , id: defId ( 65 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1198 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 226 ) , id: mirConstId ( 136 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1199 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1200 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 227 ) , id: mirConstId ( 137 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 27 ) , id: mirConstId ( 138 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1201 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1202 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 26 ) , span: span ( 1203 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1204 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 26 ) , span: span ( 1199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1204 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1205 ) ) ) ) + ty ( 161 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 12 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 12 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 15 ) ) genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 15 ) ) genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 51 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 12 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 15 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) + ty ( 166 ) |-> monoItemFn ( ... name: symbol ( "core::array::equality::::ne" ) , id: defId ( 79 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1396 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 256 ) , id: mirConstId ( 162 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1397 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1398 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1399 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1400 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1401 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1400 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1401 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1402 ) ) ) ) + ty ( 163 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::borrow_data_unchecked" ) , id: defId ( 98 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1640 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 284 ) , id: mirConstId ( 200 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1641 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 5 ) ) ) , span: span ( 1641 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1642 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 188 ) , id: mirConstId ( 101 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1643 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1644 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 217 ) , id: mirConstId ( 129 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1645 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1646 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 81 ) , span: span ( 1647 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1648 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 5 ) , span: span ( 1641 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1641 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1643 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1648 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1649 ) ) ) ) + ty ( 160 ) |-> monoItemFn ( ... name: symbol ( "core::option::Option::::ok_or::" ) , id: defId ( 29 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 425 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) branch ( 1 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 424 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 425 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 427 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 427 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 50 ) ) genericArgKindType ( ty ( 12 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 280 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 426 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 426 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 272 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 50 ) ) genericArgKindType ( ty ( 12 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 273 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 4 ) , unwind: unwindActionContinue ) , span: span ( 428 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 429 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 52 ) , span: span ( 430 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 292 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 12 ) , span: span ( 293 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 431 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 272 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 12 ) , span: span ( 427 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 292 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "err" ) , sourceInfo: sourceInfo ( ... span: span ( 293 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 272 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 432 ) ) ) ) + ty ( 162 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::FromResidual>>::from_residual" ) , id: defId ( 3 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 12 ) ) .ProjectionElems ) ) ) ) , span: span ( 102 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 101 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 100 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 11 ) , id: mirConstId ( 7 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 101 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 104 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 105 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 103 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 106 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 107 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 12 ) , span: span ( 102 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 101 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 107 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 102 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 108 ) ) ) ) + ty ( 118 ) |-> monoItemFn ( ... name: symbol ( "core::array:: for [u8; 8]>::try_from" ) , id: defId ( 18 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 258 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 259 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 257 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 261 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 261 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 262 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) ) ) , span: span ( 257 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 257 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 262 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 264 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 265 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 77 ) ) ) , span: span ( 266 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 267 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 78 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 268 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 269 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 270 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 78 ) ) .ProjectionElems ) ) ) ) , span: span ( 272 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 78 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 273 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 274 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 78 ) ) .ProjectionElems ) ) ) ) , span: span ( 276 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 11 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 276 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 277 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 263 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 262 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 79 ) , id: mirConstId ( 22 ) ) ) ) ) ) , span: span ( 279 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 270 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 260 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 80 ) , id: mirConstId ( 23 ) ) ) ) ) ) , span: span ( 280 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 271 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 274 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 10 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 10 ) , id: mirConstId ( 6 ) ) ) ) .Operands ) ) , span: span ( 281 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 278 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageDead ( local ( 10 ) ) , span: span ( 275 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 283 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 282 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 21 ) , span: span ( 284 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 285 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 80 ) , span: span ( 258 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 79 ) , span: span ( 259 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 257 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 261 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 77 ) , span: span ( 264 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 78 ) , span: span ( 286 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 82 ) , span: span ( 287 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 78 ) , span: span ( 272 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 276 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 78 ) , span: span ( 288 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 285 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 289 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 290 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 264 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "me" ) , sourceInfo: sourceInfo ( ... span: span ( 286 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 291 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 292 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "err" ) , sourceInfo: sourceInfo ( ... span: span ( 293 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 10 ) , id: mirConstId ( 6 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 272 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 288 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 276 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 294 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 10 ) , id: mirConstId ( 6 ) ) ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 295 ) ) ) ) + ty ( 103 ) |-> monoItemFn ( ... name: symbol ( "core::cmp::impls::::eq" ) , id: defId ( 13 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 194 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 195 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 192 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 287 ) , id: mirConstId ( 202 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 193 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 196 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 197 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 198 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 199 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 198 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 198 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 199 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 200 ) ) ) ) + ty ( 107 ) |-> monoItemFn ( ... name: symbol ( " as core::iter::Iterator>::next" ) , id: defId ( 87 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 1460 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1459 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1459 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1462 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1463 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1464 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1461 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1465 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 67 ) ) .ProjectionElems ) ) ) , span: span ( 1466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 265 ) ) ) , span: span ( 1467 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1468 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1469 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1470 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1471 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) ) ) , span: span ( 1471 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 1472 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 1472 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 1474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) ) ) ) , span: span ( 1474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 11 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 1476 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1477 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 1478 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1478 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1461 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 1460 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 114 ) , id: mirConstId ( 166 ) ) ) ) ) ) , span: span ( 1480 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 1479 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 1482 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 1483 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 1484 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) ) ) ) , span: span ( 1485 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1481 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 9 ) ) .Branches , otherwise: basicBlockIdx ( 8 ) ) ) , span: span ( 1481 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 1487 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1486 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 1484 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) ) , span: span ( 1483 ) ) statement ( ... kind: statementKindStorageLive ( local ( 27 ) ) , span: span ( 1488 ) ) statement ( ... kind: statementKindStorageLive ( local ( 26 ) ) , span: span ( 1489 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 15 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) , ty ( 258 ) ) ) , span: span ( 1440 ) ) statement ( ... kind: statementKindStorageDead ( local ( 26 ) ) , span: span ( 1490 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 27 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1491 ) ) statement ( ... kind: statementKindStorageDead ( local ( 27 ) ) , span: span ( 1488 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 1492 ) ) statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 1482 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1493 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 1479 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 1495 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 67 ) ) .ProjectionElems ) ) ) , span: span ( 1495 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , ty ( 266 ) ) ) , span: span ( 1496 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 1497 ) ) statement ( ... kind: statementKindStorageLive ( local ( 18 ) ) , span: span ( 1498 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 1499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 16 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1498 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 1500 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1501 ) ) statement ( ... kind: statementKindStorageDead ( local ( 18 ) ) , span: span ( 1500 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1494 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 1502 ) ) statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 1503 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 67 ) ) .ProjectionElems ) ) ) , span: span ( 1503 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 267 ) ) ) , span: span ( 1496 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 1504 ) ) statement ( ... kind: statementKindStorageLive ( local ( 22 ) ) , span: span ( 1505 ) ) statement ( ... kind: statementKindStorageLive ( local ( 23 ) ) , span: span ( 1506 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) ) ) ) , span: span ( 1506 ) ) statement ( ... kind: statementKindStorageLive ( local ( 24 ) ) , span: span ( 1507 ) ) statement ( ... kind: statementKindStorageLive ( local ( 25 ) ) , span: span ( 1508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 23 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 67 ) ) .ProjectionElems ) ) ) ) , span: span ( 1508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1507 ) ) statement ( ... kind: statementKindStorageDead ( local ( 25 ) ) , span: span ( 1509 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 167 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1510 ) ) statement ( ... kind: statementKindStorageDead ( local ( 24 ) ) , span: span ( 1511 ) ) statement ( ... kind: statementKindStorageDead ( local ( 23 ) ) , span: span ( 1512 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 260 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1513 ) ) statement ( ... kind: statementKindStorageDead ( local ( 22 ) ) , span: span ( 1512 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 1514 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1494 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 114 ) , span: span ( 1515 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 115 ) , span: span ( 1516 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1460 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1517 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1462 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1518 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 265 ) , span: span ( 1465 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 268 ) , span: span ( 1466 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 269 ) , span: span ( 1471 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 269 ) , span: span ( 1472 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 1519 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1474 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 269 ) , span: span ( 1483 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1483 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 266 ) , span: span ( 1520 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 270 ) , span: span ( 1495 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1498 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1499 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 267 ) , span: span ( 1502 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 270 ) , span: span ( 1503 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1505 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 260 ) , span: span ( 1506 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1507 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1508 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 258 ) , span: span ( 1489 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 1475 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1516 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1517 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "end" ) , sourceInfo: sourceInfo ( ... span: span ( 1518 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1521 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1522 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1523 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1524 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "offset" ) , sourceInfo: sourceInfo ( ... span: span ( 1525 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1526 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "old" ) , sourceInfo: sourceInfo ( ... span: span ( 1527 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1528 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "_end" ) , sourceInfo: sourceInfo ( ... span: span ( 1529 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1530 ) , scope: sourceScope ( 16 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1530 ) , scope: sourceScope ( 17 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1531 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 1532 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1526 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1533 ) , scope: sourceScope ( 19 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 20 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1534 ) , scope: sourceScope ( 21 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1535 ) ) ) ) + ty ( 100 ) |-> monoItemFn ( ... name: symbol ( "::is_initialized" ) , id: defId ( 24 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 4 ) , ty ( 97 ) ) .ProjectionElems ) ) ) , span: span ( 383 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 384 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 4 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 58 ) , id: mirConstId ( 36 ) ) ) ) ) ) , span: span ( 384 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 382 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 96 ) , id: mirConstId ( 35 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 382 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 385 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 386 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 387 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 58 ) , span: span ( 383 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 58 ) , span: span ( 384 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 387 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 388 ) ) ) ) + ty ( 157 ) |-> monoItemFn ( ... name: symbol ( ">::into" ) , id: defId ( 90 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1580 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 11 ) , id: mirConstId ( 7 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1581 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1582 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 8 ) , span: span ( 1583 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 1584 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1584 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1585 ) ) ) ) + ty ( 156 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::is_frozen" ) , id: defId ( 64 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 4 ) , ty ( 97 ) ) .ProjectionElems ) ) ) , span: span ( 1192 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1193 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 7 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 58 ) , id: mirConstId ( 132 ) ) ) ) ) ) , span: span ( 1193 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1191 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 57 ) , id: mirConstId ( 14 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1191 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1194 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1195 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1196 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 58 ) , span: span ( 1192 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 58 ) , span: span ( 1193 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1196 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1197 ) ) ) ) + ty ( 159 ) |-> monoItemFn ( ... name: symbol ( "core::num::::checked_sub" ) , id: defId ( 74 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1344 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1344 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1344 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 102 ) , id: mirConstId ( 159 ) ) ) ) ) ) , span: span ( 1346 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1345 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1347 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1348 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1349 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1350 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1345 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1352 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1351 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 102 ) , span: span ( 1353 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1354 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1355 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1344 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1347 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1354 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1355 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1356 ) ) ) ) + ty ( 158 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::amount" ) , id: defId ( 58 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 2 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 1144 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1142 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 147 ) , id: mirConstId ( 62 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1143 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1145 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1146 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1147 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1144 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1147 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1148 ) ) ) ) + ty ( 151 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::borrow_mut_data_unchecked" ) , id: defId ( 99 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1650 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 284 ) , id: mirConstId ( 200 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1651 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1652 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 188 ) , id: mirConstId ( 101 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1653 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1654 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 285 ) , id: mirConstId ( 201 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1655 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1656 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 133 ) , span: span ( 1657 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1658 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1651 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1653 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1658 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1659 ) ) ) ) + ty ( 153 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_mut::" ) , id: defId ( 67 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1220 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 181 ) , id: mirConstId ( 94 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1221 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1222 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 234 ) , id: mirConstId ( 145 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 32 ) , id: mirConstId ( 146 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1223 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1224 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 31 ) , span: span ( 1225 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 1226 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 31 ) , span: span ( 1221 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1226 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1227 ) ) ) ) + ty ( 155 ) |-> monoItemFn ( ... name: symbol ( "core::cmp::impls::::eq" ) , id: defId ( 13 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 194 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 195 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 192 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 60 ) , id: mirConstId ( 16 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 193 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 196 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 197 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 61 ) , span: span ( 198 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 61 ) , span: span ( 199 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 198 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 198 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 199 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 200 ) ) ) ) + ty ( 154 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 29 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 29 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 53 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 31 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) + ty ( 143 ) |-> monoItemFn ( ... name: symbol ( "processor::transfer::process_transfer" ) , id: defId ( 45 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 631 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 144 ) , id: mirConstId ( 58 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 632 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 633 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 145 ) , id: mirConstId ( 59 ) ) ) ) , args: operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 9 ) , id: mirConstId ( 60 ) ) ) ) .Operands , destination: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 634 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 635 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 146 ) , id: mirConstId ( 61 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 635 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 635 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) branch ( 1 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 635 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 635 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 638 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 636 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 147 ) , id: mirConstId ( 62 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 7 ) ) , unwind: unwindActionContinue ) , span: span ( 637 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 4 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 639 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 639 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 635 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 0 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 642 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 640 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 148 ) , id: mirConstId ( 63 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 641 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 643 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 644 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 645 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 646 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 647 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 56 ) , span: span ( 635 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 20 ) , span: span ( 634 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 21 ) , span: span ( 632 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 639 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 639 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 638 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 149 ) , span: span ( 642 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 645 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 646 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "amount" ) , sourceInfo: sourceInfo ( ... span: span ( 647 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 639 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 638 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 648 ) ) ) ) + ty ( 144 ) |-> monoItemFn ( ... name: symbol ( "<&[u8] as core::convert::TryInto<[u8; 8]>>::try_into" ) , id: defId ( 33 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 487 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 118 ) , id: mirConstId ( 45 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 488 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 489 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 21 ) , span: span ( 490 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 491 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 491 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 492 ) ) ) ) + ty ( 141 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::FromResidual>>::from_residual" ) , id: defId ( 3 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 102 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 101 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 100 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 16 ) , id: mirConstId ( 8 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 101 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 104 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 105 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 103 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 106 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 107 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 102 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 101 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 107 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 102 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 108 ) ) ) ) + ty ( 142 ) |-> monoItemFn ( ... name: symbol ( "entrypoint::process_remaining_instruction" ) , id: defId ( 44 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 2 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 624 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 625 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 623 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 626 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 627 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 81 ) , span: span ( 628 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 629 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 624 ) , mut: mutabilityMut ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 627 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "instruction_data" ) , sourceInfo: sourceInfo ( ... span: span ( 628 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "discriminator" ) , sourceInfo: sourceInfo ( ... span: span ( 629 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 630 ) ) ) ) + ty ( 147 ) |-> monoItemFn ( ... name: symbol ( "core::num::::from_le_bytes" ) , id: defId ( 76 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 50 ) ) ) , span: span ( 1365 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1364 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 50 ) , span: span ( 1366 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1367 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1367 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1368 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "x" ) , sourceInfo: sourceInfo ( ... span: span ( 1369 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 0 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1370 ) ) ) ) + ty ( 148 ) |-> monoItemFn ( ... name: symbol ( "processor::shared::transfer::process_transfer" ) , id: defId ( 46 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , span: span ( 650 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 1 ) ) branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 649 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 652 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 651 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGe , operandMove ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 651 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 64 ) ) ) ) ) ) , span: span ( 651 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 651 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 0 , minLength: 4 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 654 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 1 , minLength: 4 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 655 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 2 , minLength: 4 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 656 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 3 , minLength: 4 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 657 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemSubslice ( ... from: 4 , to: 0 , fromEnd: true ) .ProjectionElems ) ) ) , span: span ( 658 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 659 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 150 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 660 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 661 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 653 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 10 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 662 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 663 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueLen ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 664 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 28 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGe , operandMove ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 664 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x03\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 65 ) ) ) ) ) ) , span: span ( 664 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 28 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 5 ) ) ) , span: span ( 664 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 0 , minLength: 3 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 665 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 1 , minLength: 3 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 666 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemConstantIndex ( ... offset: 2 , minLength: 3 , fromEnd: false ) .ProjectionElems ) ) ) , span: span ( 667 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemSubslice ( ... from: 3 , to: 0 , fromEnd: true ) .ProjectionElems ) ) ) , span: span ( 668 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 29 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 150 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 669 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 29 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 670 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 653 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 10 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 672 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 673 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 671 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 676 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 152 ) ) .ProjectionElems ) ) ) ) , span: span ( 677 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 2 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 678 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 3 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 679 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 9 ) , projection: projectionElemField ( fieldIdx ( 4 ) , ty ( 65 ) ) .ProjectionElems ) ) ) ) , span: span ( 680 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 674 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 151 ) , id: mirConstId ( 66 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 32 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 8 ) ) , unwind: unwindActionContinue ) , span: span ( 675 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 681 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 153 ) , id: mirConstId ( 67 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 32 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 31 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 9 ) ) , unwind: unwindActionContinue ) , span: span ( 682 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 683 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 154 ) , id: mirConstId ( 68 ) ) ) ) , args: operandMove ( place ( ... local: local ( 31 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 30 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 10 ) ) , unwind: unwindActionContinue ) , span: span ( 683 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 33 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 30 ) , projection: .ProjectionElems ) ) ) , span: span ( 683 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 33 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 12 ) ) branch ( 1 , basicBlockIdx ( 13 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 683 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 35 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 30 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) ) , span: span ( 685 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 37 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 686 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 38 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) ) , span: span ( 687 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 684 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 155 ) , id: mirConstId ( 69 ) ) ) ) , args: operandMove ( place ( ... local: local ( 37 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 38 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 36 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 14 ) ) , unwind: unwindActionContinue ) , span: span ( 684 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 34 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 30 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 688 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 688 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 34 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 683 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 26 ) ) .Branches , otherwise: basicBlockIdx ( 15 ) ) ) , span: span ( 689 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 41 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 692 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 690 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 156 ) , id: mirConstId ( 70 ) ) ) ) , args: operandMove ( place ( ... local: local ( 41 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 40 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 16 ) ) , unwind: unwindActionContinue ) , span: span ( 691 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 40 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 19 ) ) .Branches , otherwise: basicBlockIdx ( 17 ) ) ) , span: span ( 691 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 43 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 17 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 695 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 693 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 43 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 42 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 18 ) ) , unwind: unwindActionContinue ) , span: span ( 694 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 42 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 696 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 48 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 699 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 697 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 158 ) , id: mirConstId ( 72 ) ) ) ) , args: operandMove ( place ( ... local: local ( 48 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 47 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 20 ) ) , unwind: unwindActionContinue ) , span: span ( 698 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 700 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 159 ) , id: mirConstId ( 73 ) ) ) ) , args: operandMove ( place ( ... local: local ( 47 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 46 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 21 ) ) , unwind: unwindActionContinue ) , span: span ( 701 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 49 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 1 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 704 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 702 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 46 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 49 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 45 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 22 ) ) , unwind: unwindActionContinue ) , span: span ( 703 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 705 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 45 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 44 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 23 ) ) , unwind: unwindActionContinue ) , span: span ( 705 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 50 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 44 ) , projection: .ProjectionElems ) ) ) , span: span ( 705 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 50 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 24 ) ) branch ( 1 , basicBlockIdx ( 25 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 705 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 52 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 44 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 707 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 39 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 707 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 48 ) ) , span: span ( 706 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 51 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 44 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 708 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 708 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 51 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 705 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 709 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 163 ) , id: mirConstId ( 77 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 55 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 27 ) ) , unwind: unwindActionContinue ) , span: span ( 710 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 711 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 164 ) , id: mirConstId ( 78 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 55 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 54 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 28 ) ) , unwind: unwindActionContinue ) , span: span ( 712 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 713 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 165 ) , id: mirConstId ( 79 ) ) ) ) , args: operandMove ( place ( ... local: local ( 54 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 53 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 29 ) ) , unwind: unwindActionContinue ) , span: span ( 713 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 56 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 53 ) , projection: .ProjectionElems ) ) ) , span: span ( 713 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 56 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 30 ) ) branch ( 1 , basicBlockIdx ( 31 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 713 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 58 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 53 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 24 ) ) .ProjectionElems ) ) ) ) , span: span ( 716 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 60 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 717 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 714 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 156 ) , id: mirConstId ( 70 ) ) ) ) , args: operandMove ( place ( ... local: local ( 60 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 59 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 32 ) ) , unwind: unwindActionContinue ) , span: span ( 715 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 57 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 53 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 718 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 718 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 57 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 713 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 59 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 33 ) ) .Branches , otherwise: basicBlockIdx ( 35 ) ) ) , span: span ( 715 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 719 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 156 ) , id: mirConstId ( 70 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 61 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 34 ) ) , unwind: unwindActionContinue ) , span: span ( 720 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 61 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 37 ) ) .Branches , otherwise: basicBlockIdx ( 35 ) ) ) , span: span ( 720 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 63 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 17 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 723 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 721 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 63 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 62 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 36 ) ) , unwind: unwindActionContinue ) , span: span ( 722 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 62 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 724 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 68 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 727 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 725 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 158 ) , id: mirConstId ( 72 ) ) ) ) , args: operandMove ( place ( ... local: local ( 68 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 67 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 38 ) ) , unwind: unwindActionContinue ) , span: span ( 726 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 728 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 159 ) , id: mirConstId ( 73 ) ) ) ) , args: operandMove ( place ( ... local: local ( 67 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 66 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 39 ) ) , unwind: unwindActionContinue ) , span: span ( 729 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 69 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 1 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 732 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 730 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 66 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 69 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 65 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 40 ) ) , unwind: unwindActionContinue ) , span: span ( 731 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 733 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 65 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 64 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 41 ) ) , unwind: unwindActionContinue ) , span: span ( 733 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 70 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 64 ) , projection: .ProjectionElems ) ) ) , span: span ( 733 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 70 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 42 ) ) branch ( 1 , basicBlockIdx ( 43 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 733 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 72 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 64 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 735 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 74 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 736 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 75 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 58 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 737 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 734 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 166 ) , id: mirConstId ( 80 ) ) ) ) , args: operandMove ( place ( ... local: local ( 74 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 75 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 73 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 44 ) ) , unwind: unwindActionContinue ) , span: span ( 734 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 71 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 64 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 738 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 738 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 71 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 733 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 73 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 47 ) ) .Branches , otherwise: basicBlockIdx ( 45 ) ) ) , span: span ( 734 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 77 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 741 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 739 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 77 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 76 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 46 ) ) , unwind: unwindActionContinue ) , span: span ( 740 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 76 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 742 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 39 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 72 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 743 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 48 ) ) , span: span ( 706 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 78 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 745 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 78 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 1 , basicBlockIdx ( 49 ) ) branch ( 0 , basicBlockIdx ( 62 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 744 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 79 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 150 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 62 ) ) .ProjectionElems ) ) ) ) , span: span ( 748 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 80 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 150 ) ) projectionElemField ( fieldIdx ( 1 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 749 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 746 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 83 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 50 ) ) , unwind: unwindActionContinue ) , span: span ( 747 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 82 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 83 ) , projection: .ProjectionElems ) ) ) , span: span ( 747 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 85 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 751 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 84 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 85 ) , projection: .ProjectionElems ) ) ) , span: span ( 751 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 750 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 169 ) , id: mirConstId ( 82 ) ) ) ) , args: operandMove ( place ( ... local: local ( 82 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 84 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 81 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 51 ) ) , unwind: unwindActionContinue ) , span: span ( 750 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 81 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 54 ) ) .Branches , otherwise: basicBlockIdx ( 52 ) ) ) , span: span ( 750 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 87 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 754 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 752 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 87 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 86 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 53 ) ) , unwind: unwindActionContinue ) , span: span ( 753 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 86 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 755 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 756 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 163 ) , id: mirConstId ( 77 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 90 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 55 ) ) , unwind: unwindActionContinue ) , span: span ( 757 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 758 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 170 ) , id: mirConstId ( 83 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 90 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 89 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 56 ) ) , unwind: unwindActionContinue ) , span: span ( 759 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 760 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 171 ) , id: mirConstId ( 84 ) ) ) ) , args: operandMove ( place ( ... local: local ( 89 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 88 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 57 ) ) , unwind: unwindActionContinue ) , span: span ( 760 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 91 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 88 ) , projection: .ProjectionElems ) ) ) , span: span ( 760 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 91 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 58 ) ) branch ( 1 , basicBlockIdx ( 59 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 760 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 93 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 88 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 39 ) ) .ProjectionElems ) ) ) ) , span: span ( 762 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 95 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 93 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 2 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 763 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 94 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandCopy ( place ( ... local: local ( 80 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 95 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 761 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 94 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 62 ) ) .Branches , otherwise: basicBlockIdx ( 60 ) ) ) , span: span ( 761 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 92 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 88 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 764 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 764 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 92 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 760 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 97 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 18 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 767 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 765 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 157 ) , id: mirConstId ( 71 ) ) ) ) , args: operandMove ( place ( ... local: local ( 97 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 96 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 61 ) ) , unwind: unwindActionContinue ) , span: span ( 766 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 96 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 768 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 101 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 771 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 769 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 172 ) , id: mirConstId ( 85 ) ) ) ) , args: operandMove ( place ( ... local: local ( 101 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 100 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 63 ) ) , unwind: unwindActionContinue ) , span: span ( 770 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 99 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 100 ) , projection: .ProjectionElems ) ) ) , span: span ( 770 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 772 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 104 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 64 ) ) , unwind: unwindActionContinue ) , span: span ( 773 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 103 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 104 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 775 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 102 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 103 ) , projection: .ProjectionElems ) ) ) , span: span ( 775 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 774 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 173 ) , id: mirConstId ( 86 ) ) ) ) , args: operandMove ( place ( ... local: local ( 99 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 102 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 98 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 65 ) ) , unwind: unwindActionContinue ) , span: span ( 774 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 98 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 81 ) ) .Branches , otherwise: basicBlockIdx ( 66 ) ) ) , span: span ( 774 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 776 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 168 ) , id: mirConstId ( 81 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 107 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 67 ) ) , unwind: unwindActionContinue ) , span: span ( 777 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 778 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 174 ) , id: mirConstId ( 87 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 107 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 106 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 68 ) ) , unwind: unwindActionContinue ) , span: span ( 779 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 780 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 175 ) , id: mirConstId ( 88 ) ) ) ) , args: operandMove ( place ( ... local: local ( 106 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 105 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 69 ) ) , unwind: unwindActionContinue ) , span: span ( 780 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 108 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 105 ) , projection: .ProjectionElems ) ) ) , span: span ( 780 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 108 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 70 ) ) branch ( 1 , basicBlockIdx ( 71 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 780 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 114 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 783 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 781 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 176 ) , id: mirConstId ( 89 ) ) ) ) , args: operandMove ( place ( ... local: local ( 114 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 113 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 72 ) ) , unwind: unwindActionContinue ) , span: span ( 782 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 109 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 105 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 784 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 784 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 109 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 780 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 785 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 159 ) , id: mirConstId ( 73 ) ) ) ) , args: operandMove ( place ( ... local: local ( 113 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 112 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 73 ) ) , unwind: unwindActionContinue ) , span: span ( 786 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 115 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 1 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 789 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 787 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 112 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 115 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 111 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 74 ) ) , unwind: unwindActionContinue ) , span: span ( 788 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 790 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 111 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 110 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 75 ) ) , unwind: unwindActionContinue ) , span: span ( 790 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 116 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 110 ) , projection: .ProjectionElems ) ) ) , span: span ( 790 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 116 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 76 ) ) branch ( 1 , basicBlockIdx ( 77 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 790 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 118 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 110 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 792 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 78 ) ) .Branches , otherwise: basicBlockIdx ( 85 ) ) ) , span: span ( 791 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 117 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 110 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 793 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 793 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 117 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 790 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 794 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 177 ) , id: mirConstId ( 90 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 119 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 79 ) ) , unwind: unwindActionContinue ) , span: span ( 795 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 80 ) ) .Branches , otherwise: basicBlockIdx ( 85 ) ) ) , span: span ( 796 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 797 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 178 ) , id: mirConstId ( 91 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 120 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 85 ) ) , unwind: unwindActionContinue ) , span: span ( 798 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 123 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 801 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 799 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 174 ) , id: mirConstId ( 87 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 123 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 122 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 82 ) ) , unwind: unwindActionContinue ) , span: span ( 800 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 802 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 175 ) , id: mirConstId ( 88 ) ) ) ) , args: operandMove ( place ( ... local: local ( 122 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 121 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 83 ) ) , unwind: unwindActionContinue ) , span: span ( 802 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 124 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 121 ) , projection: .ProjectionElems ) ) ) , span: span ( 802 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 124 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 85 ) ) branch ( 1 , basicBlockIdx ( 84 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 802 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 125 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 121 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 803 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 803 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 125 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 802 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 86 ) ) .Branches , otherwise: basicBlockIdx ( 87 ) ) ) , span: span ( 804 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 87 ) ) .Branches , otherwise: basicBlockIdx ( 95 ) ) ) , span: span ( 805 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 806 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 179 ) , id: mirConstId ( 92 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 127 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 88 ) ) , unwind: unwindActionContinue ) , span: span ( 807 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 808 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 175 ) , id: mirConstId ( 88 ) ) ) ) , args: operandMove ( place ( ... local: local ( 127 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 126 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 89 ) ) , unwind: unwindActionContinue ) , span: span ( 808 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 128 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 126 ) , projection: .ProjectionElems ) ) ) , span: span ( 808 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 128 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 90 ) ) branch ( 1 , basicBlockIdx ( 91 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 808 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 809 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 179 ) , id: mirConstId ( 92 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 131 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 92 ) ) , unwind: unwindActionContinue ) , span: span ( 810 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 129 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 126 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 811 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 811 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 129 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 808 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 812 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 175 ) , id: mirConstId ( 88 ) ) ) ) , args: operandMove ( place ( ... local: local ( 131 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 130 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 93 ) ) , unwind: unwindActionContinue ) , span: span ( 812 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 132 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 130 ) , projection: .ProjectionElems ) ) ) , span: span ( 812 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 132 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 123 ) ) branch ( 1 , basicBlockIdx ( 94 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 812 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 133 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 130 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 813 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 813 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 133 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 812 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 135 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 816 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 814 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 180 ) , id: mirConstId ( 93 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 135 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 134 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 96 ) ) , unwind: unwindActionContinue ) , span: span ( 815 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 817 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 151 ) , id: mirConstId ( 66 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 138 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 97 ) ) , unwind: unwindActionContinue ) , span: span ( 818 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 819 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 181 ) , id: mirConstId ( 94 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 138 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 137 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 98 ) ) , unwind: unwindActionContinue ) , span: span ( 820 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 821 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 154 ) , id: mirConstId ( 68 ) ) ) ) , args: operandMove ( place ( ... local: local ( 137 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 136 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 99 ) ) , unwind: unwindActionContinue ) , span: span ( 821 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 139 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 136 ) , projection: .ProjectionElems ) ) ) , span: span ( 821 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 139 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 100 ) ) branch ( 1 , basicBlockIdx ( 101 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 821 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 141 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 136 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 29 ) ) .ProjectionElems ) ) ) ) , span: span ( 824 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 146 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 141 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 825 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 822 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 158 ) , id: mirConstId ( 72 ) ) ) ) , args: operandMove ( place ( ... local: local ( 146 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 145 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 102 ) ) , unwind: unwindActionContinue ) , span: span ( 823 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 140 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 136 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 17 ) ) .ProjectionElems ) ) ) ) , span: span ( 826 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 826 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 141 ) , id: mirConstId ( 55 ) ) ) ) , args: operandMove ( place ( ... local: local ( 140 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 821 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 827 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 182 ) , id: mirConstId ( 95 ) ) ) ) , args: operandMove ( place ( ... local: local ( 145 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 144 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 103 ) ) , unwind: unwindActionContinue ) , span: span ( 828 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 147 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 14 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 831 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 829 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 144 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 147 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 143 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 104 ) ) , unwind: unwindActionContinue ) , span: span ( 830 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 832 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 143 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 142 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 105 ) ) , unwind: unwindActionContinue ) , span: span ( 832 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 148 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 142 ) , projection: .ProjectionElems ) ) ) , span: span ( 832 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 148 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 106 ) ) branch ( 1 , basicBlockIdx ( 107 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 832 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 150 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 142 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 835 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 833 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 180 ) , id: mirConstId ( 93 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 150 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 151 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 108 ) ) , unwind: unwindActionContinue ) , span: span ( 834 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 149 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 142 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 836 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 836 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 149 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 832 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 153 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 35 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 839 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 837 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 183 ) , id: mirConstId ( 96 ) ) ) ) , args: operandMove ( place ( ... local: local ( 153 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 152 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 109 ) ) , unwind: unwindActionContinue ) , span: span ( 838 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 152 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 123 ) ) .Branches , otherwise: basicBlockIdx ( 110 ) ) ) , span: span ( 838 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 840 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 184 ) , id: mirConstId ( 97 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 154 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 111 ) ) , unwind: unwindActionContinue ) , span: span ( 841 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 158 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 154 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 844 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 842 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 159 ) , id: mirConstId ( 73 ) ) ) ) , args: operandMove ( place ( ... local: local ( 158 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 157 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 112 ) ) , unwind: unwindActionContinue ) , span: span ( 843 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 159 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 14 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 847 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 845 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 157 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 159 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 156 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 113 ) ) , unwind: unwindActionContinue ) , span: span ( 846 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 848 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 156 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 155 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 114 ) ) , unwind: unwindActionContinue ) , span: span ( 848 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 160 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 155 ) , projection: .ProjectionElems ) ) ) , span: span ( 848 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 160 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 115 ) ) branch ( 1 , basicBlockIdx ( 116 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 848 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 162 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 155 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 851 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 154 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 162 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 852 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 849 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 184 ) , id: mirConstId ( 97 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 163 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 117 ) ) , unwind: unwindActionContinue ) , span: span ( 850 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 161 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 155 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 853 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 853 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 161 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 848 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 167 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 163 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 856 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 854 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 182 ) , id: mirConstId ( 95 ) ) ) ) , args: operandMove ( place ( ... local: local ( 167 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 166 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 118 ) ) , unwind: unwindActionContinue ) , span: span ( 855 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 168 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 47 ) , variantIdx ( 14 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 859 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 857 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 160 ) , id: mirConstId ( 74 ) ) ) ) , args: operandMove ( place ( ... local: local ( 166 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 168 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 165 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 119 ) ) , unwind: unwindActionContinue ) , span: span ( 858 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 860 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 161 ) , id: mirConstId ( 75 ) ) ) ) , args: operandMove ( place ( ... local: local ( 165 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 164 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 120 ) ) , unwind: unwindActionContinue ) , span: span ( 860 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 169 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 164 ) , projection: .ProjectionElems ) ) ) , span: span ( 860 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 169 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 121 ) ) branch ( 1 , basicBlockIdx ( 122 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 860 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 171 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 164 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 862 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 163 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 171 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 863 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 123 ) ) , span: span ( 861 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 170 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 164 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 15 ) ) .ProjectionElems ) ) ) ) , span: span ( 864 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 864 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 162 ) , id: mirConstId ( 76 ) ) ) ) , args: operandMove ( place ( ... local: local ( 170 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 124 ) ) , unwind: unwindActionContinue ) , span: span ( 860 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 13 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) .Operands ) ) , span: span ( 866 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 124 ) ) , span: span ( 865 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 865 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 14 ) , span: span ( 867 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 868 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 869 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 149 ) , span: span ( 870 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 676 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 152 ) , span: span ( 677 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 678 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 679 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 680 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 185 ) , span: span ( 653 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 649 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 652 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 662 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 654 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 655 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 656 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 657 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 658 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 651 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 651 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 152 ) , span: span ( 660 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 150 ) , span: span ( 659 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 672 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 665 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 666 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 667 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 65 ) , span: span ( 668 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 664 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 664 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 152 ) , span: span ( 669 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 53 ) , span: span ( 683 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 31 ) , span: span ( 682 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 675 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 688 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 688 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 29 ) , span: span ( 685 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 871 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 61 ) , span: span ( 686 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 61 ) , span: span ( 687 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 872 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 691 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 692 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 694 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 695 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 51 ) , span: span ( 705 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 703 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 701 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 698 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 699 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 704 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 708 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 708 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 707 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 54 ) , span: span ( 713 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 26 ) , span: span ( 712 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 710 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 718 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 718 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 24 ) , span: span ( 716 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 715 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 717 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 720 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 722 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 723 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 51 ) , span: span ( 733 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 731 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 729 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 726 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 727 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 732 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 738 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 738 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 735 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 734 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 736 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 737 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 740 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 741 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 744 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 748 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 749 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 750 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 106 ) , span: span ( 747 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 747 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 106 ) , span: span ( 751 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 751 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 753 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 754 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 55 ) , span: span ( 760 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 41 ) , span: span ( 759 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 757 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 764 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 764 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 39 ) , span: span ( 762 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 761 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 763 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 766 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 767 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 774 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 105 ) , span: span ( 770 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 114 ) , span: span ( 770 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 24 ) , span: span ( 771 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 105 ) , span: span ( 775 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 114 ) , span: span ( 775 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 773 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 48 ) , span: span ( 780 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 779 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 777 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 784 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 784 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 51 ) , span: span ( 790 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 788 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 786 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 782 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 783 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 789 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 793 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 793 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 792 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 795 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 798 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 48 ) , span: span ( 802 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 800 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 801 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 803 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 803 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 48 ) , span: span ( 808 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 807 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 811 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 811 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 48 ) , span: span ( 812 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 14 ) , span: span ( 810 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 813 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 813 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 815 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 816 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 53 ) , span: span ( 821 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 31 ) , span: span ( 820 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 818 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 826 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 17 ) , span: span ( 826 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 29 ) , span: span ( 824 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 51 ) , span: span ( 832 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 830 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 828 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 823 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 825 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 831 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 836 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 836 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 835 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 13 ) , span: span ( 834 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 838 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 839 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 186 ) , span: span ( 841 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 51 ) , span: span ( 848 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 846 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 843 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 844 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 847 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 853 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 853 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 851 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 186 ) , span: span ( 850 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 51 ) , span: span ( 860 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 52 ) , span: span ( 858 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 102 ) , span: span ( 855 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 856 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 859 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 864 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 15 ) , span: span ( 864 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 862 ) , mut: mutabilityNot ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "accounts" ) , sourceInfo: sourceInfo ( ... span: span ( 868 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "amount" ) , sourceInfo: sourceInfo ( ... span: span ( 869 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "expected_decimals" ) , sourceInfo: sourceInfo ( ... span: span ( 870 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "source_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 676 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "expected_mint_info" ) , sourceInfo: sourceInfo ( ... span: span ( 677 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 678 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "authority_info" ) , sourceInfo: sourceInfo ( ... span: span ( 679 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining" ) , sourceInfo: sourceInfo ( ... span: span ( 680 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "decimals" ) , sourceInfo: sourceInfo ( ... span: span ( 652 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "source_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 654 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "mint_info" ) , sourceInfo: sourceInfo ( ... span: span ( 655 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 656 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "authority_info" ) , sourceInfo: sourceInfo ( ... span: span ( 657 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining" ) , sourceInfo: sourceInfo ( ... span: span ( 658 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "source_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 665 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account_info" ) , sourceInfo: sourceInfo ( ... span: span ( 666 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "authority_info" ) , sourceInfo: sourceInfo ( ... span: span ( 667 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining" ) , sourceInfo: sourceInfo ( ... span: span ( 668 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "source_account" ) , sourceInfo: sourceInfo ( ... span: span ( 873 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 688 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 34 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 685 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 35 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self_transfer" ) , sourceInfo: sourceInfo ( ... span: span ( 871 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 36 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining_amount" ) , sourceInfo: sourceInfo ( ... span: span ( 872 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 39 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 708 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 51 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 707 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 52 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account" ) , sourceInfo: sourceInfo ( ... span: span ( 874 ) , scope: sourceScope ( 16 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 718 ) , scope: sourceScope ( 17 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 57 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 716 ) , scope: sourceScope ( 19 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 58 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "remaining_amount" ) , sourceInfo: sourceInfo ( ... span: span ( 875 ) , scope: sourceScope ( 21 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 72 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 738 ) , scope: sourceScope ( 22 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 71 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 735 ) , scope: sourceScope ( 24 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 72 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "mint_info" ) , sourceInfo: sourceInfo ( ... span: span ( 748 ) , scope: sourceScope ( 26 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 79 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "decimals" ) , sourceInfo: sourceInfo ( ... span: span ( 749 ) , scope: sourceScope ( 26 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 80 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "mint" ) , sourceInfo: sourceInfo ( ... span: span ( 876 ) , scope: sourceScope ( 27 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 93 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 764 ) , scope: sourceScope ( 28 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 92 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 762 ) , scope: sourceScope ( 30 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 93 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 784 ) , scope: sourceScope ( 32 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 109 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 877 ) , scope: sourceScope ( 34 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "delegated_amount" ) , sourceInfo: sourceInfo ( ... span: span ( 878 ) , scope: sourceScope ( 36 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 793 ) , scope: sourceScope ( 37 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 117 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 792 ) , scope: sourceScope ( 39 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 118 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 803 ) , scope: sourceScope ( 41 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 125 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 879 ) , scope: sourceScope ( 43 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 811 ) , scope: sourceScope ( 45 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 129 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 880 ) , scope: sourceScope ( 47 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 813 ) , scope: sourceScope ( 49 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 133 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 881 ) , scope: sourceScope ( 51 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 13 ) , id: mirConstId ( 98 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_account" ) , sourceInfo: sourceInfo ( ... span: span ( 882 ) , scope: sourceScope ( 53 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 826 ) , scope: sourceScope ( 54 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 140 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 824 ) , scope: sourceScope ( 56 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 141 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_amount" ) , sourceInfo: sourceInfo ( ... span: span ( 883 ) , scope: sourceScope ( 58 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 150 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 836 ) , scope: sourceScope ( 59 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 149 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 835 ) , scope: sourceScope ( 61 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 150 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "source_lamports" ) , sourceInfo: sourceInfo ( ... span: span ( 884 ) , scope: sourceScope ( 63 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 154 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 853 ) , scope: sourceScope ( 64 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 161 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 851 ) , scope: sourceScope ( 66 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 162 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "destination_lamports" ) , sourceInfo: sourceInfo ( ... span: span ( 885 ) , scope: sourceScope ( 68 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 163 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 864 ) , scope: sourceScope ( 69 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 170 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 862 ) , scope: sourceScope ( 71 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 171 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 886 ) ) ) ) + ty ( 145 ) |-> monoItemFn ( ... name: symbol ( "core::result::Result::<[u8; 8], core::array::TryFromSliceError>::map_err::" ) , id: defId ( 5 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 110 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 109 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 110 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 10 ) ) .ProjectionElems ) ) ) ) , span: span ( 113 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 112 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 111 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 111 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 112 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 112 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 111 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 18 ) , id: mirConstId ( 9 ) ) ) ) , args: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 4 ) ) , unwind: unwindActionContinue ) , span: span ( 112 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 115 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 116 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 5 ) , unwind: unwindActionContinue ) , span: span ( 114 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 118 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 118 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 19 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 119 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 117 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 117 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 120 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 20 ) , span: span ( 121 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 21 ) , span: span ( 122 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 9 ) , span: span ( 123 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 124 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 19 ) , span: span ( 115 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 10 ) , span: span ( 113 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 112 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 9 ) , span: span ( 111 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 23 ) , span: span ( 112 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 122 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "op" ) , sourceInfo: sourceInfo ( ... span: span ( 123 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 115 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 113 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 125 ) ) ) ) + ty ( 146 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 19 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 19 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 19 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 56 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 20 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 19 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) + ty ( 199 ) |-> monoItemFn ( ... name: symbol ( "> as core::iter::Iterator>::next" ) , id: defId ( 31 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 451 ) ) statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 450 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 453 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindTwoPhaseBorrow ) , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 108 ) ) .ProjectionElems ) ) ) , span: span ( 453 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 449 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 107 ) , id: mirConstId ( 43 ) ) ) ) , args: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 450 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 455 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 456 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 7 ) ) branch ( 1 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 454 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 8 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 458 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 459 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 460 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 460 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 459 ) ) statement ( ... kind: statementKindStorageDead ( local ( 10 ) ) , span: span ( 461 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 109 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 462 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 463 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 464 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 457 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 457 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 6 ) , unwind: unwindActionTerminate ) , span: span ( 464 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindResume , span: span ( 465 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 109 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 467 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 468 ) ) statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 464 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 457 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 4 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 104 ) ) .ProjectionElems ) ) ) ) , span: span ( 470 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 110 ) ) genericArgKindType ( ty ( 104 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 471 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 452 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 466 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 472 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 104 ) ) .ProjectionElems ) ) ) ) , span: span ( 472 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 472 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 468 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 469 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 458 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 8 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) , expected: false , msg: assertMessageOverflow ( binOpAdd , operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 469 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) , target: basicBlockIdx ( 3 ) , unwind: unwindActionCleanup ( basicBlockIdx ( 5 ) ) ) , span: span ( 458 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 111 ) , span: span ( 475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 112 ) , span: span ( 476 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 104 ) , span: span ( 451 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 113 ) , span: span ( 452 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 114 ) , span: span ( 450 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 115 ) , span: span ( 453 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 472 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 477 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 116 ) , span: span ( 458 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 109 ) , span: span ( 459 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 460 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 478 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 104 ) , span: span ( 470 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 476 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 451 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 479 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 110 ) , id: mirConstId ( 44 ) ) ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "val" ) , sourceInfo: sourceInfo ( ... span: span ( 472 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "i" ) , sourceInfo: sourceInfo ( ... span: span ( 477 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 480 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 470 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "residual" ) , sourceInfo: sourceInfo ( ... span: span ( 481 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 110 ) , id: mirConstId ( 44 ) ) ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 465 ) ) ) ) + ty ( 198 ) |-> monoItemFn ( ... name: symbol ( "> as core::iter::IntoIterator>::into_iter" ) , id: defId ( 32 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 483 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 482 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 117 ) , span: span ( 484 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 117 ) , span: span ( 485 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 485 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 486 ) ) ) ) + ty ( 194 ) |-> monoItemFn ( ... name: symbol ( "core::array::> for [[u8; 32]; 11]>::index" ) , id: defId ( 17 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPointerCoercion ( pointerCoercionUnsize ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 70 ) ) ) , span: span ( 251 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 249 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 75 ) , id: mirConstId ( 20 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 250 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 252 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 70 ) , span: span ( 253 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 76 ) , span: span ( 254 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 71 ) , span: span ( 255 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 70 ) , span: span ( 251 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 254 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "index" ) , sourceInfo: sourceInfo ( ... span: span ( 255 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 256 ) ) ) ) + ty ( 197 ) |-> monoItemFn ( ... name: symbol ( " as core::iter::Iterator>::enumerate" ) , id: defId ( 82 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 83 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 108 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 1421 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) .Operands ) ) , span: span ( 1422 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1420 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 117 ) , span: span ( 1423 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 108 ) , span: span ( 1424 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1424 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "iter" ) , sourceInfo: sourceInfo ( ... span: span ( 1425 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1426 ) ) ) ) + ty ( 196 ) |-> monoItemFn ( ... name: symbol ( "core::slice::::iter" ) , id: defId ( 14 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 201 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 289 ) , id: mirConstId ( 205 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 202 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 203 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 108 ) , span: span ( 204 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 70 ) , span: span ( 205 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 205 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 206 ) ) ) ) + ty ( 191 ) |-> monoItemFn ( ... name: symbol ( "core::slice::::iter" ) , id: defId ( 14 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 201 ) , userTy: someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 0 ) ) , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 63 ) , id: mirConstId ( 17 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 202 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 203 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 64 ) , span: span ( 204 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 205 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 205 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 206 ) ) ) ) + ty ( 190 ) |-> monoItemFn ( ... name: symbol ( " as core::ops::Try>::branch" ) , id: defId ( 8 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 147 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) branch ( 1 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 146 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 147 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 8 ) ) .ProjectionElems ) ) ) ) , span: span ( 149 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 44 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 150 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 34 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 151 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 148 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 148 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: projectionElemDowncast ( variantIdx ( 0 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 34 ) ) .ProjectionElems ) ) ) ) , span: span ( 153 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 9 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 17 ) ) genericArgKindType ( ty ( 34 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 154 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 152 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 155 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 49 ) , span: span ( 156 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 36 ) , span: span ( 157 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 22 ) , span: span ( 158 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 153 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 8 ) , span: span ( 149 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 17 ) , span: span ( 150 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 157 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v" ) , sourceInfo: sourceInfo ( ... span: span ( 153 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 149 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 159 ) ) ) ) + ty ( 193 ) |-> monoItemFn ( ... name: symbol ( " as core::iter::Iterator>::next" ) , id: defId ( 87 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 2 ) ) , span: span ( 1460 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1459 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1459 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1462 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 2 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1463 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1464 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1461 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1465 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 121 ) ) .ProjectionElems ) ) ) , span: span ( 1466 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , ty ( 271 ) ) ) , span: span ( 1467 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1468 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1469 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1470 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1471 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) ) ) , span: span ( 1471 ) ) statement ( ... kind: statementKindStorageLive ( local ( 9 ) ) , span: span ( 1472 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , span: span ( 1472 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 1474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) ) ) ) , span: span ( 1474 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 11 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 1476 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1477 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 1473 ) ) statement ( ... kind: statementKindStorageDead ( local ( 9 ) ) , span: span ( 1478 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1478 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1461 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 4 ) ) ) , span: span ( 1460 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 202 ) , id: mirConstId ( 167 ) ) ) ) ) ) , span: span ( 1480 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 1479 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 1482 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 1483 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 1484 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) ) ) ) , span: span ( 1485 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1481 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 9 ) ) .Branches , otherwise: basicBlockIdx ( 8 ) ) ) , span: span ( 1481 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 2 ) ) , span: span ( 1487 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1486 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 1484 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) ) , span: span ( 1483 ) ) statement ( ... kind: statementKindStorageLive ( local ( 27 ) ) , span: span ( 1488 ) ) statement ( ... kind: statementKindStorageLive ( local ( 26 ) ) , span: span ( 1489 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 27 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 15 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1475 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 26 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 27 ) , projection: .ProjectionElems ) ) , ty ( 125 ) ) ) , span: span ( 1440 ) ) statement ( ... kind: statementKindStorageDead ( local ( 26 ) ) , span: span ( 1490 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 27 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1491 ) ) statement ( ... kind: statementKindStorageDead ( local ( 27 ) ) , span: span ( 1488 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 1492 ) ) statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 1482 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 62 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1493 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 1479 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 1495 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 121 ) ) .ProjectionElems ) ) ) , span: span ( 1495 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , ty ( 266 ) ) ) , span: span ( 1496 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 1497 ) ) statement ( ... kind: statementKindStorageLive ( local ( 18 ) ) , span: span ( 1498 ) ) statement ( ... kind: statementKindStorageLive ( local ( 19 ) ) , span: span ( 1499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 16 ) , projection: projectionElemDeref .ProjectionElems ) ) ) ) , span: span ( 1499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandMove ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1498 ) ) statement ( ... kind: statementKindStorageDead ( local ( 19 ) ) , span: span ( 1500 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: projectionElemDeref .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1501 ) ) statement ( ... kind: statementKindStorageDead ( local ( 18 ) ) , span: span ( 1500 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1494 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 1502 ) ) statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 1503 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityMut , place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 1 ) , ty ( 121 ) ) .ProjectionElems ) ) ) , span: span ( 1503 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , ty ( 272 ) ) ) , span: span ( 1496 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 1504 ) ) statement ( ... kind: statementKindStorageLive ( local ( 22 ) ) , span: span ( 1505 ) ) statement ( ... kind: statementKindStorageLive ( local ( 23 ) ) , span: span ( 1506 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) ) ) ) , span: span ( 1506 ) ) statement ( ... kind: statementKindStorageLive ( local ( 24 ) ) , span: span ( 1507 ) ) statement ( ... kind: statementKindStorageLive ( local ( 25 ) ) , span: span ( 1508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 25 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 23 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 121 ) ) .ProjectionElems ) ) ) ) , span: span ( 1508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 24 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandMove ( place ( ... local: local ( 25 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 1507 ) ) statement ( ... kind: statementKindStorageDead ( local ( 25 ) ) , span: span ( 1509 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 124 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 24 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1510 ) ) statement ( ... kind: statementKindStorageDead ( local ( 24 ) ) , span: span ( 1511 ) ) statement ( ... kind: statementKindStorageDead ( local ( 23 ) ) , span: span ( 1512 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 263 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1513 ) ) statement ( ... kind: statementKindStorageDead ( local ( 22 ) ) , span: span ( 1512 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 1514 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 7 ) ) , span: span ( 1494 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 202 ) , span: span ( 1515 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 203 ) , span: span ( 1516 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1460 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1517 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1462 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1518 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 271 ) , span: span ( 1465 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 273 ) , span: span ( 1466 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 274 ) , span: span ( 1471 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 274 ) , span: span ( 1472 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1519 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1474 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1475 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 274 ) , span: span ( 1483 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1483 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 266 ) , span: span ( 1520 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 275 ) , span: span ( 1495 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1498 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1499 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 272 ) , span: span ( 1502 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 275 ) , span: span ( 1503 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1505 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1506 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1507 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1508 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 125 ) , span: span ( 1489 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1475 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1516 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1517 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "end" ) , sourceInfo: sourceInfo ( ... span: span ( 1518 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 92 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 93 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1521 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1522 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1523 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1524 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "offset" ) , sourceInfo: sourceInfo ( ... span: span ( 1525 ) , scope: sourceScope ( 11 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1526 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "old" ) , sourceInfo: sourceInfo ( ... span: span ( 1527 ) , scope: sourceScope ( 12 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1528 ) , scope: sourceScope ( 14 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "_end" ) , sourceInfo: sourceInfo ( ... span: span ( 1529 ) , scope: sourceScope ( 15 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 20 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1530 ) , scope: sourceScope ( 16 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1530 ) , scope: sourceScope ( 17 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1531 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 1532 ) , scope: sourceScope ( 18 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 1526 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1533 ) , scope: sourceScope ( 19 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 20 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1534 ) , scope: sourceScope ( 21 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 26 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1535 ) ) ) ) + ty ( 192 ) |-> monoItemFn ( ... name: symbol ( " as core::iter::IntoIterator>::into_iter" ) , id: defId ( 32 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 483 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 482 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 64 ) , span: span ( 484 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 64 ) , span: span ( 485 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 485 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 486 ) ) ) ) + ty ( 189 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::" ) , id: defId ( 65 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1198 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 224 ) , id: mirConstId ( 133 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1199 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1200 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 225 ) , id: mirConstId ( 134 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 37 ) , id: mirConstId ( 135 ) ) ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 2 ) ) , unwind: unwindActionContinue ) , span: span ( 1201 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1202 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 36 ) , span: span ( 1203 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1204 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 36 ) , span: span ( 1199 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1204 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1205 ) ) ) ) + ty ( 188 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::data_len" ) , id: defId ( 54 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 85 ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueNullaryOp ( nullOpAlignOf , ty ( 131 ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 995 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 995 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 995 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageMisalignedPointerDereference ( ... required: operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , found: operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionUnreachable ) , span: span ( 995 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 3 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 8 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 995 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 997 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 996 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 998 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 999 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 999 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 85 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 995 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 995 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 999 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1000 ) ) ) ) + ty ( 183 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::is_native" ) , id: defId ( 61 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1169 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 1 ) ) ) ) ) ) , span: span ( 1169 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 64 ) ) ) ) ) ) , span: span ( 1168 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1168 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , index: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 1168 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 5 ) , ty ( 223 ) ) projectionElemIndex ( local ( 3 ) ) .ProjectionElems ) ) ) ) , span: span ( 1168 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1171 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) ) , span: span ( 1172 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1170 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1173 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 1174 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1168 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1169 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1168 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1168 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1174 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1175 ) ) ) ) + ty ( 181 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_mut_unchecked::" ) , id: defId ( 68 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1229 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1230 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpNe , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1231 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\xa5\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 142 ) ) ) ) ) ) , span: span ( 1228 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1228 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 3 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 1233 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1234 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1232 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1235 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 235 ) , id: mirConstId ( 147 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionContinue ) , span: span ( 1236 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , ty ( 236 ) ) ) , span: span ( 1237 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 7 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1238 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1239 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 1232 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1232 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 31 ) , span: span ( 1240 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 133 ) , span: span ( 1241 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1228 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1230 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 81 ) , span: span ( 1229 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 1233 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 1238 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 236 ) , span: span ( 1237 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 132 ) , span: span ( 1236 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "bytes" ) , sourceInfo: sourceInfo ( ... span: span ( 1241 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1242 ) ) ) ) + ty ( 182 ) |-> monoItemFn ( ... name: symbol ( "core::num::::checked_add" ) , id: defId ( 73 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 1327 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1328 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1328 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) ) ) , span: span ( 1327 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 1326 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1329 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1330 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 253 ) , id: mirConstId ( 157 ) ) ) ) , args: .Operands , destination: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 3 ) ) , unwind: unwindActionUnreachable ) , span: span ( 1331 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1333 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1333 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityNot ) ) , ty: ty ( 102 ) , id: mirConstId ( 158 ) ) ) ) ) ) , span: span ( 1334 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 1 ) ) , span: span ( 1332 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1333 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 1333 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1335 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpAddUnchecked , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1336 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 50 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1337 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1338 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 1 ) ) , span: span ( 1332 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 102 ) , span: span ( 1339 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1340 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1341 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1327 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 254 ) , span: span ( 1328 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1335 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 13 ) , span: span ( 1331 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1340 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1341 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1342 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1343 ) ) ) ) + ty ( 187 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::owner" ) , id: defId ( 52 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 984 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 6 ) , ty ( 167 ) ) .ProjectionElems ) ) ) , span: span ( 984 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 983 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 104 ) , span: span ( 985 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 986 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 986 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 986 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 987 ) ) ) ) + ty ( 180 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::account::Account::set_amount" ) , id: defId ( 57 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1134 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 221 ) , id: mirConstId ( 131 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 1135 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 2 ) , ty ( 19 ) ) .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1137 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1136 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1138 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 1139 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1140 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 19 ) , span: span ( 1135 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1139 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "amount" ) , sourceInfo: sourceInfo ( ... span: span ( 1140 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1141 ) ) ) ) + ty ( 184 ) |-> monoItemFn ( ... name: symbol ( "pinocchio::account_info::AccountInfo::borrow_mut_lamports_unchecked" ) , id: defId ( 97 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCopyForDeref ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) , span: span ( 1636 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindMut ( ... kind: mutBorrowKindDefault ) , place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 7 ) , ty ( 50 ) ) .ProjectionElems ) ) ) , span: span ( 1636 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1635 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 186 ) , span: span ( 1637 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1638 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1638 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1638 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1639 ) ) ) ) + ty ( 4 ) |-> monoItemFn ( ... name: symbol ( "core::ptr::align_offset::mod_inv" ) , id: defId ( 34 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 494 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 0 ) ) ) ) ) ) , span: span ( 495 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 496 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 493 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 497 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 497 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x0b\r\x07\t\x03\x05\x0f" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityNot ) ) , ty: ty ( 19 ) , id: mirConstId ( 46 ) ) ) ) ) ) , span: span ( 497 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 498 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x0f\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 47 ) ) ) ) ) ) , span: span ( 499 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpShr , operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 500 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 4 ) , mutability: mutabilityMut ) ) , ty: ty ( 119 ) , id: mirConstId ( 48 ) ) ) ) ) ) , span: span ( 498 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 500 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) ) ) , span: span ( 493 ) ) .Statements , terminator: terminator ( ... kind: assert ( ... cond: operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , expected: true , msg: assertMessageBoundsCheck ( ... len: operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 21 ) ) ) ) , index: operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) , target: basicBlockIdx ( 1 ) , unwind: unwindActionContinue ) , span: span ( 493 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemIndex ( local ( 7 ) ) .ProjectionElems ) ) ) ) , span: span ( 493 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , ty ( 1 ) ) ) , span: span ( 502 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 503 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 504 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 504 ) ) statement ( ... kind: statementKindStorageLive ( local ( 10 ) ) , span: span ( 505 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 506 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x10\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 49 ) ) ) ) ) ) , span: span ( 506 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 2 ) ) , span: span ( 501 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 507 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 508 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGe , operandMove ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 507 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 11 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 507 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 509 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 510 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 6 ) ) , span: span ( 10 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 509 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 510 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 512 ) ) statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 513 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 513 ) ) statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 514 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 515 ) ) statement ( ... kind: statementKindStorageLive ( local ( 17 ) ) , span: span ( 516 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 17 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 516 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpMul , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 17 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 515 ) ) statement ( ... kind: statementKindStorageDead ( local ( 17 ) ) , span: span ( 517 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSub , operandConstant ( constOperand ( ... span: span ( 518 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x02\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 1 ) , id: mirConstId ( 50 ) ) ) ) , operandMove ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 514 ) ) statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 519 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpMul , operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 512 ) ) statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 520 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 520 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 521 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 520 ) ) statement ( ... kind: statementKindStorageLive ( local ( 20 ) ) , span: span ( 522 ) ) statement ( ... kind: statementKindStorageLive ( local ( 21 ) ) , span: span ( 523 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 21 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 523 ) ) statement ( ... kind: statementKindStorageLive ( local ( 22 ) ) , span: span ( 524 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 22 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 524 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 20 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpMul , operandMove ( place ( ... local: local ( 21 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 22 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 522 ) ) statement ( ... kind: statementKindStorageDead ( local ( 22 ) ) , span: span ( 525 ) ) statement ( ... kind: statementKindStorageDead ( local ( 21 ) ) , span: span ( 525 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 18 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 20 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 526 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 19 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 20 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) ) ) , span: span ( 527 ) ) statement ( ... kind: statementKindStorageDead ( local ( 20 ) ) , span: span ( 528 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 6 ) ) ) , span: span ( 511 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 529 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 2 ) ) , span: span ( 501 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 23 ) ) , span: span ( 531 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 23 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 531 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpBitAnd , operandMove ( place ( ... local: local ( 23 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 532 ) ) statement ( ... kind: statementKindStorageDead ( local ( 23 ) ) , span: span ( 533 ) ) statement ( ... kind: statementKindStorageDead ( local ( 10 ) ) , span: span ( 534 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 534 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 530 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 535 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 536 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 537 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 538 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 496 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 493 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 19 ) , span: span ( 497 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 498 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 499 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 493 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 505 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 507 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 508 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 512 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 513 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 514 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 515 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 516 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 526 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 527 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 116 ) , span: span ( 522 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 523 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 524 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 531 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "x" ) , sourceInfo: sourceInfo ( ... span: span ( 536 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "m" ) , sourceInfo: sourceInfo ( ... span: span ( 537 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "m_minus_one" ) , sourceInfo: sourceInfo ( ... span: span ( 538 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "inverse" ) , sourceInfo: sourceInfo ( ... span: span ( 496 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "mod_gate" ) , sourceInfo: sourceInfo ( ... span: span ( 505 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "new_gate" ) , sourceInfo: sourceInfo ( ... span: span ( 526 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 18 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "overflow" ) , sourceInfo: sourceInfo ( ... span: span ( 527 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 19 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 539 ) ) ) ) + ty ( -1 ) |-> monoItemFn ( ... name: symbol ( "main" ) , id: defId ( 94 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1617 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1618 ) , mut: mutabilityMut ) .LocalDecls , argCount: 0 , varDebugInfo: .VarDebugInfos , spreadArg: noLocal , span: span ( 1619 ) ) ) ) + ty ( 83 ) |-> monoItemFn ( ... name: symbol ( " as core::slice::SliceIndex<[[u8; 32]]>>::index" ) , id: defId ( 15 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 208 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 209 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 210 ) ) statement ( ... kind: statementKindStorageLive ( local ( 13 ) ) , span: span ( 207 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 13 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLt , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 207 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 13 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 4 ) ) .Branches , otherwise: basicBlockIdx ( 3 ) ) ) , span: span ( 207 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 211 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 66 ) , id: mirConstId ( 18 ) ) ) ) , args: operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 212 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 214 ) ) statement ( ... kind: statementKindStorageLive ( local ( 11 ) ) , span: span ( 215 ) ) statement ( ... kind: statementKindStorageLive ( local ( 12 ) ) , span: span ( 216 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 12 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 216 ) ) statement ( ... kind: statementKindStorageLive ( local ( 15 ) ) , span: span ( 215 ) ) statement ( ... kind: statementKindStorageLive ( local ( 16 ) ) , span: span ( 217 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 16 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 12 ) , projection: .ProjectionElems ) ) , ty ( 67 ) ) ) , span: span ( 218 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 15 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandCopy ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 219 ) ) statement ( ... kind: statementKindStorageDead ( local ( 16 ) ) , span: span ( 217 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 11 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindRawPtr ( ty ( 68 ) , mutabilityNot ) , operandCopy ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 220 ) ) statement ( ... kind: statementKindStorageDead ( local ( 15 ) ) , span: span ( 215 ) ) statement ( ... kind: statementKindStorageDead ( local ( 12 ) ) , span: span ( 221 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 11 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 222 ) ) statement ( ... kind: statementKindStorageDead ( local ( 11 ) ) , span: span ( 223 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 213 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 226 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 227 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 224 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 69 ) , id: mirConstId ( 19 ) ) ) ) , args: operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionContinue ) , span: span ( 225 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 14 ) ) , span: span ( 229 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 14 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpSubUnchecked , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 230 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 16 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 1 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 14 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 231 ) ) statement ( ... kind: statementKindStorageDead ( local ( 14 ) ) , span: span ( 232 ) ) statement ( ... kind: statementKindStorageDead ( local ( 13 ) ) , span: span ( 226 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: projectionElemDowncast ( variantIdx ( 1 ) ) projectionElemField ( fieldIdx ( 0 ) , ty ( 1 ) ) .ProjectionElems ) ) ) ) , span: span ( 233 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 227 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 228 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 234 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpGt , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 228 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 228 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 70 ) , span: span ( 235 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 71 ) , span: span ( 236 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 70 ) , span: span ( 237 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 72 ) , span: span ( 238 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 233 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 73 ) , span: span ( 208 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 209 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 210 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 228 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 234 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 72 ) , span: span ( 212 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 74 ) , span: span ( 215 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 74 ) , span: span ( 216 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 207 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 229 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 67 ) , span: span ( 239 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 67 ) , span: span ( 240 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 236 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 237 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "new_len" ) , sourceInfo: sourceInfo ( ... span: span ( 233 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 241 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 242 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 243 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "offset" ) , sourceInfo: sourceInfo ( ... span: span ( 244 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 245 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 239 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 15 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 246 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "index" ) , sourceInfo: sourceInfo ( ... span: span ( 247 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 240 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 16 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 248 ) ) ) ) + ty ( 98 ) |-> monoItemFn ( ... name: symbol ( "::is_initialized" ) , id: defId ( 26 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 2 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 397 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 398 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) ) , span: span ( 399 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 396 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 400 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 401 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 397 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 401 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 402 ) ) ) ) + ty ( 99 ) |-> monoItemFn ( ... name: symbol ( "::is_initialized" ) , id: defId ( 25 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 3 ) , ty ( 0 ) ) .ProjectionElems ) ) ) ) , span: span ( 390 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 391 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 37 ) ) ) ) ) ) , span: span ( 392 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 389 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 393 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 394 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 390 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 394 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 395 ) ) ) ) + ty ( 96 ) |-> monoItemFn ( ... name: symbol ( "::ne" ) , id: defId ( 10 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 3 ) ) , span: span ( 161 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 160 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 57 ) , id: mirConstId ( 14 ) ) ) ) , args: operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 161 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpNot , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 163 ) ) statement ( ... kind: statementKindStorageDead ( local ( 3 ) ) , span: span ( 164 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 162 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 165 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 58 ) , span: span ( 166 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 58 ) , span: span ( 167 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 161 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 166 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 167 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 168 ) ) ) ) + ty ( 11 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::error:: for pinocchio::program_error::ProgramError>::from" ) , id: defId ( 89 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 0 ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpLe , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , operandConstant ( constOperand ( ... span: span ( 1574 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x13" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 0 ) , id: mirConstId ( 194 ) ) ) ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindIntrinsic ( nonDivergingIntrinsicAssume ( operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , ty ( 7 ) ) ) , span: span ( 1574 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 0 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1575 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1573 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 8 ) , span: span ( 1576 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 12 ) , span: span ( 1577 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 7 ) , span: span ( 1574 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 22 ) , span: span ( 1578 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 0 ) , span: span ( 1574 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1574 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "e" ) , sourceInfo: sourceInfo ( ... span: span ( 1577 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1579 ) ) ) ) + ty ( 18 ) |-> monoItemFn ( ... name: symbol ( "processor::transfer::process_transfer::{closure#0}" ) , id: defId ( 1 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 2 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 96 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 95 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 8 ) , span: span ( 97 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 9 ) , span: span ( 98 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 10 ) , span: span ( 99 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "_error" ) , sourceInfo: sourceInfo ( ... span: span ( 99 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsConst ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 10 ) , id: mirConstId ( 6 ) ) ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 98 ) ) ) ) + ty ( 16 ) |-> monoItemFn ( ... name: symbol ( ">::from" ) , id: defId ( 7 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 142 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 141 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 8 ) , span: span ( 143 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 144 ) , mut: mutabilityNot ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 144 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 145 ) ) ) ) + ty ( 40 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::::{closure#0}" ) , id: defId ( 27 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 99 ) , id: mirConstId ( 39 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 404 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 406 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 9 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 407 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 39 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 408 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 409 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 41 ) , span: span ( 410 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 42 ) , span: span ( 411 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 39 ) , span: span ( 412 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 404 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 407 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 412 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 411 ) ) ) ) + ty ( 25 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::::{closure#0}" ) , id: defId ( 27 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 100 ) , id: mirConstId ( 40 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 404 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 406 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 9 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 407 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 24 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 408 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 409 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 26 ) , span: span ( 410 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 27 ) , span: span ( 411 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 412 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 404 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 407 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 412 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 411 ) ) ) ) + ty ( 30 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load_mut::::{closure#0}" ) , id: defId ( 28 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 415 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 413 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 100 ) , id: mirConstId ( 40 ) ) ) ) , args: operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 414 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 414 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 417 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 416 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 9 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 418 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 29 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 419 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 416 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 420 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 31 ) , span: span ( 421 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 32 ) , span: span ( 422 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 29 ) , span: span ( 423 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 414 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 24 ) , span: span ( 415 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 418 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 423 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 422 ) ) ) ) + ty ( 35 ) |-> monoItemFn ( ... name: symbol ( "spl_token_interface::state::load::::{closure#0}" ) , id: defId ( 27 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 403 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 98 ) , id: mirConstId ( 38 ) ) ) ) , args: operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 404 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 404 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 406 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 2 ) , variantIdx ( 9 ) , .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , .Operands ) ) , span: span ( 407 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 4 ) , variantIdx ( 1 ) , genericArgKindType ( ty ( 34 ) ) genericArgKindType ( ty ( 8 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 408 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 4 ) ) , span: span ( 405 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 409 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 36 ) , span: span ( 410 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 37 ) , span: span ( 411 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 34 ) , span: span ( 412 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 404 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 8 ) , span: span ( 407 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "t" ) , sourceInfo: sourceInfo ( ... span: span ( 412 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 411 ) ) ) ) + ty ( 75 ) |-> monoItemFn ( ... name: symbol ( "core::slice::index::> for [[u8; 32]]>::index" ) , id: defId ( 19 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 296 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 83 ) , id: mirConstId ( 24 ) ) ) ) , args: operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionContinue ) , span: span ( 297 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 298 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 70 ) , span: span ( 299 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 70 ) , span: span ( 300 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 71 ) , span: span ( 301 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 300 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "index" ) , sourceInfo: sourceInfo ( ... span: span ( 301 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 302 ) ) ) ) + ty ( 57 ) |-> monoItemFn ( ... name: symbol ( "::eq" ) , id: defId ( 11 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 170 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 2 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 171 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 172 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 169 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 173 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 58 ) , span: span ( 174 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 58 ) , span: span ( 175 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 176 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 0 ) , span: span ( 177 ) , mut: mutabilityNot ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 174 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 175 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "__self_discr" ) , sourceInfo: sourceInfo ( ... span: span ( 176 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "__arg1_discr" ) , sourceInfo: sourceInfo ( ... span: span ( 177 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 178 ) ) ) ) + ty ( 59 ) |-> monoItemFn ( ... name: symbol ( "core::num::::unchecked_add::precondition_check" ) , id: defId ( 77 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1372 ) ) statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1373 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1374 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , ty ( 50 ) ) ) , span: span ( 1374 ) ) statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1375 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindIntToInt , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 50 ) ) ) , span: span ( 1375 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueCheckedBinaryOp ( binOpAdd , operandMove ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1373 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1376 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1376 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 0 ) , ty ( 50 ) ) .ProjectionElems ) ) ) ) , span: span ( 1377 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 6 ) , projection: projectionElemField ( fieldIdx ( 1 ) , ty ( 6 ) ) .ProjectionElems ) ) ) ) , span: span ( 1378 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1379 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1372 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1371 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1380 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 86 ) , id: mirConstId ( 26 ) ) ) ) , args: operandConstant ( constOperand ( ... span: span ( 1381 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00E\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: provenanceMapEntry ( ... provSize: 0 , allocId: allocId ( 8 ) ) .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , ty: ty ( 87 ) , id: mirConstId ( 160 ) ) ) ) .Operands , destination: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , target: noBasicBlockIdx , unwind: unwindActionUnreachable ) , span: span ( 1382 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1383 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 13 ) , span: span ( 1384 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1385 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1385 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 72 ) , span: span ( 1382 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1377 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1378 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 254 ) , span: span ( 1373 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1374 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 50 ) , span: span ( 1375 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "lhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1385 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1385 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1386 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "rhs" ) , sourceInfo: sourceInfo ( ... span: span ( 1387 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "a" ) , sourceInfo: sourceInfo ( ... span: span ( 1377 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "b" ) , sourceInfo: sourceInfo ( ... span: span ( 1378 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1388 ) ) ) ) + ty ( 60 ) |-> monoItemFn ( ... name: symbol ( "::eq" ) , id: defId ( 96 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 1 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) ) , span: span ( 1628 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 2 ) , projection: projectionElemDeref projectionElemField ( fieldIdx ( 0 ) , ty ( 205 ) ) .ProjectionElems ) ) ) ) , span: span ( 1629 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpEq , operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , operandMove ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1630 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1627 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 6 ) , span: span ( 1631 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1632 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 62 ) , span: span ( 1633 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1628 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 205 ) , span: span ( 1629 ) , mut: mutabilityMut ) .LocalDecls , argCount: 2 , varDebugInfo: varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1632 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "other" ) , sourceInfo: sourceInfo ( ... span: span ( 1633 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1634 ) ) ) ) + ty ( 63 ) |-> monoItemFn ( ... name: symbol ( "core::slice::Iter::<'_, pinocchio::account_info::AccountInfo>::new" ) , id: defId ( 84 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , rvalue: rvalueUnaryOp ( unOpPtrMetadata , operandCopy ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1428 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1429 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueAddressOf ( mutabilityNot , place ( ... local: local ( 1 ) , projection: projectionElemDeref .ProjectionElems ) ) ) , span: span ( 1430 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 250 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1431 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , ty ( 121 ) ) ) , span: span ( 1432 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 3 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 85 ) , variantIdx ( 0 ) , genericArgKindType ( ty ( 124 ) ) .GenericArgs , noUserTypeAnnotationIndex , noFieldIdx ) , operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1433 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1434 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1435 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandConstant ( constOperand ( ... span: span ( 1427 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 2 ) ) .Branches , otherwise: basicBlockIdx ( 1 ) ) ) , span: span ( 1427 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindTransmute , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , ty ( 121 ) ) ) , span: span ( 1437 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 6 ) ) , span: span ( 1438 ) ) statement ( ... kind: statementKindStorageLive ( local ( 7 ) ) , span: span ( 1439 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , ty ( 125 ) ) ) , span: span ( 1440 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueBinaryOp ( binOpOffset , operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , operandCopy ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 583 ) ) statement ( ... kind: statementKindStorageDead ( local ( 7 ) ) , span: span ( 1441 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueCast ( castKindPtrToPtr , operandMove ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) , ty ( 121 ) ) ) , span: span ( 1438 ) ) statement ( ... kind: statementKindStorageDead ( local ( 6 ) ) , span: span ( 1442 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 3 ) ) , span: span ( 1436 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageLive ( local ( 8 ) ) , span: span ( 1444 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandCopy ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1444 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindAdt ( adtDef ( 86 ) , variantIdx ( 0 ) , genericArgKindLifetime ( region ( ... kind: regionKindReErased ) ) genericArgKindType ( ty ( 124 ) ) .GenericArgs , someUserTypeAnnotationIndex ( userTypeAnnotationIndex ( 3 ) ) , noFieldIdx ) , operandCopy ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) operandConstant ( constOperand ( ... span: span ( 10 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 262 ) , id: mirConstId ( 165 ) ) ) ) .Operands ) ) , span: span ( 1445 ) ) statement ( ... kind: statementKindStorageDead ( local ( 8 ) ) , span: span ( 1446 ) ) statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1447 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1443 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 64 ) , span: span ( 1448 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 65 ) , span: span ( 1449 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1450 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 263 ) , span: span ( 1451 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 264 ) , span: span ( 1429 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1435 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 125 ) , span: span ( 1438 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 125 ) , span: span ( 1439 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1444 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 251 ) , span: span ( 1452 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 121 ) , span: span ( 1432 ) , mut: mutabilityMut ) .LocalDecls , argCount: 1 , varDebugInfo: varDebugInfo ( ... name: symbol ( "slice" ) , sourceInfo: sourceInfo ( ... span: span ( 1449 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "len" ) , sourceInfo: sourceInfo ( ... span: span ( 1450 ) , scope: sourceScope ( 1 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "ptr" ) , sourceInfo: sourceInfo ( ... span: span ( 1451 ) , scope: sourceScope ( 2 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "end_or_len" ) , sourceInfo: sourceInfo ( ... span: span ( 1435 ) , scope: sourceScope ( 3 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) , argumentIndex: noInt ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 1453 ) , scope: sourceScope ( 4 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "r" ) , sourceInfo: sourceInfo ( ... span: span ( 1454 ) , scope: sourceScope ( 5 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1455 ) , scope: sourceScope ( 6 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 7 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "addr" ) , sourceInfo: sourceInfo ( ... span: span ( 1457 ) , scope: sourceScope ( 8 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 1456 ) , scope: sourceScope ( 9 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "self" ) , sourceInfo: sourceInfo ( ... span: span ( 585 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "count" ) , sourceInfo: sourceInfo ( ... span: span ( 586 ) , scope: sourceScope ( 10 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1458 ) ) ) ) + ty ( 276 ) |-> monoItemFn ( ... name: symbol ( "core::cmp::min_by:: fn(&'a usize, &'b usize) -> core::cmp::Ordering {::cmp}>" ) , id: defId ( 93 ) , body: someBody ( body ( ... blocks: basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1602 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 41 ) ) ) ) ) ) , span: span ( 1602 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 9 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1602 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x01" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 41 ) ) ) ) ) ) , span: span ( 1602 ) ) statement ( ... kind: statementKindStorageLive ( local ( 4 ) ) , span: span ( 1602 ) ) statement ( ... kind: statementKindStorageLive ( local ( 5 ) ) , span: span ( 1602 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 6 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) , span: span ( 1603 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 7 ) , projection: .ProjectionElems ) , rvalue: rvalueRef ( region ( ... kind: regionKindReErased ) , borrowKindShared , place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) , span: span ( 1604 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 5 ) , projection: .ProjectionElems ) , rvalue: rvalueAggregate ( aggregateKindTuple , operandCopy ( place ( ... local: local ( 6 ) , projection: .ProjectionElems ) ) operandCopy ( place ( ... local: local ( 7 ) , projection: .ProjectionElems ) ) .Operands ) ) , span: span ( 1602 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindCall ( ... func: operandConstant ( constOperand ( ... span: span ( 1601 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindZeroSized , ty: ty ( 279 ) , id: mirConstId ( 198 ) ) ) ) , args: operandMove ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) operandMove ( place ( ... local: local ( 5 ) , projection: .ProjectionElems ) ) .Operands , destination: place ( ... local: local ( 4 ) , projection: .ProjectionElems ) , target: someBasicBlockIdx ( basicBlockIdx ( 1 ) ) , unwind: unwindActionCleanup ( basicBlockIdx ( 7 ) ) ) , span: span ( 1602 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindStorageDead ( local ( 5 ) ) , span: span ( 1606 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 8 ) , projection: .ProjectionElems ) , rvalue: rvalueDiscriminant ( place ( ... local: local ( 4 ) , projection: .ProjectionElems ) ) ) , span: span ( 1602 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandMove ( place ( ... local: local ( 8 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 255 , basicBlockIdx ( 4 ) ) branch ( 0 , basicBlockIdx ( 4 ) ) branch ( 1 , basicBlockIdx ( 3 ) ) .Branches , otherwise: basicBlockIdx ( 2 ) ) ) , span: span ( 1605 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindUnreachable , span: span ( 1602 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1608 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1607 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindGoto ( ... target: basicBlockIdx ( 5 ) ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 10 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandConstant ( constOperand ( ... span: span ( 1609 ) , userTy: noUserTypeAnnotationIndex , const: mirConst ( ... kind: constantKindAllocated ( allocation ( ... bytes: b"\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 1 ) , mutability: mutabilityMut ) ) , ty: ty ( 6 ) , id: mirConstId ( 33 ) ) ) ) ) ) , span: span ( 1609 ) ) statement ( ... kind: statementKindAssign ( ... place: place ( ... local: local ( 0 ) , projection: .ProjectionElems ) , rvalue: rvalueUse ( operandMove ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) ) ) , span: span ( 1609 ) ) statement ( ... kind: statementKindStorageDead ( local ( 4 ) ) , span: span ( 1607 ) ) .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 9 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 5 ) ) .Branches , otherwise: basicBlockIdx ( 9 ) ) ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 6 ) ) .Branches , otherwise: basicBlockIdx ( 10 ) ) ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindReturn , span: span ( 1610 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 12 ) , unwind: unwindActionTerminate ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindResume , span: span ( 1611 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 2 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 6 ) , unwind: unwindActionCleanup ( basicBlockIdx ( 12 ) ) ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 1 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 6 ) , unwind: unwindActionContinue ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindDrop ( ... place: place ( ... local: local ( 1 ) , projection: .ProjectionElems ) , target: basicBlockIdx ( 8 ) , unwind: unwindActionTerminate ) , span: span ( 1607 ) ) ) basicBlock ( ... statements: .Statements , terminator: terminator ( ... kind: terminatorKindSwitchInt ( ... discr: operandCopy ( place ( ... local: local ( 10 ) , projection: .ProjectionElems ) ) , targets: switchTargets ( ... branches: branch ( 0 , basicBlockIdx ( 8 ) ) .Branches , otherwise: basicBlockIdx ( 11 ) ) ) , span: span ( 1607 ) ) ) .BasicBlocks , locals: localDecl ( ... ty: ty ( 1 ) , span: span ( 1612 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1613 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 1 ) , span: span ( 1614 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 277 ) , span: span ( 1615 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 246 ) , span: span ( 1602 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 280 ) , span: span ( 1602 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1603 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 247 ) , span: span ( 1604 ) , mut: mutabilityNot ) localDecl ( ... ty: ty ( 281 ) , span: span ( 1616 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1607 ) , mut: mutabilityMut ) localDecl ( ... ty: ty ( 6 ) , span: span ( 1607 ) , mut: mutabilityMut ) .LocalDecls , argCount: 3 , varDebugInfo: varDebugInfo ( ... name: symbol ( "v1" ) , sourceInfo: sourceInfo ( ... span: span ( 1613 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 1 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 1 ) ) varDebugInfo ( ... name: symbol ( "v2" ) , sourceInfo: sourceInfo ( ... span: span ( 1614 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 2 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 2 ) ) varDebugInfo ( ... name: symbol ( "compare" ) , sourceInfo: sourceInfo ( ... span: span ( 1615 ) , scope: sourceScope ( 0 ) ) , composite: noVarDebugInfoFragment , value: varDebugInfoContentsPlace ( place ( ... local: local ( 3 ) , projection: .ProjectionElems ) ) , argumentIndex: someInt ( 3 ) ) .VarDebugInfos , spreadArg: noLocal , span: span ( 1611 ) ) ) ) symbol ( "processor::transfer::process_transfer" ) - ty ( 302 ) |-> typeInfoArrayType ( ty ( 87 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 3 ) ) ) ) ty ( 307 ) |-> typeInfoRefType ( ty ( 308 ) ) ty ( 304 ) |-> typeInfoArrayType ( ty ( 305 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 4 ) ) ) ) ty ( 309 ) |-> typeInfoStructType ( "core::fmt::rt::Placeholder" , adtDef ( 121 ) ) ty ( 306 ) |-> typeInfoArrayType ( ty ( 305 ) , noTyConst ) ty ( 308 ) |-> typeInfoArrayType ( ty ( 309 ) , noTyConst ) ty ( 301 ) |-> typeInfoPrimitiveType ( primTypeStr ) ty ( 303 ) |-> typeInfoArrayType ( ty ( 87 ) , noTyConst ) ty ( 300 ) |-> typeInfoStructType ( "spl_token_interface::state::mint::Mint" , adtDef ( 115 ) ) ty ( 312 ) |-> typeInfoArrayType ( ty ( 128 ) , noTyConst ) ty ( 274 ) |-> typeInfoRefType ( ty ( 263 ) ) ty ( 275 ) |-> typeInfoPtrType ( ty ( 121 ) ) ty ( 270 ) |-> typeInfoPtrType ( ty ( 67 ) ) ty ( 271 ) |-> typeInfoPtrType ( ty ( 263 ) ) ty ( 272 ) |-> typeInfoPtrType ( ty ( 263 ) ) ty ( 273 ) |-> typeInfoPtrType ( ty ( 121 ) ) ty ( 294 ) |-> typeInfoStructType ( "core::panic::Location" , adtDef ( 109 ) ) ty ( 246 ) |-> typeInfoEnumType ( "core::cmp::Ordering" , adtDef ( 127 ) , Discriminant ( variantIdx ( 0 ) , 255 ) Discriminant ( variantIdx ( 1 ) , 0 ) Discriminant ( variantIdx ( 2 ) , 1 ) .Discriminants ) ty ( 295 ) |-> typeInfoStructType ( "spl_token_interface::state::account::Account" , adtDef ( 111 ) ) ty ( 245 ) |-> typeInfoRefType ( ty ( 81 ) ) ty ( 293 ) |-> typeInfoRefType ( ty ( 294 ) ) ty ( 247 ) |-> typeInfoRefType ( ty ( 1 ) ) ty ( 242 ) |-> typeInfoArrayType ( ty ( 128 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x80\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 1 ) ) ) ) ty ( 243 ) |-> typeInfoRefType ( ty ( 242 ) ) ty ( 298 ) |-> typeInfoStructType ( "spl_token_interface::state::multisig::Multisig" , adtDef ( 114 ) ) ty ( 249 ) |-> typeInfoArrayType ( ty ( 0 ) , noTyConst ) ty ( 244 ) |-> typeInfoRefType ( ty ( 242 ) ) ty ( 280 ) |-> typeInfoTupleType ( ty ( 247 ) ty ( 247 ) .Tys ) ty ( 281 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) ty ( 283 ) |-> typeInfoRefType ( ty ( 205 ) ) ty ( 286 ) |-> typeInfoPtrType ( ty ( 131 ) ) ty ( 265 ) |-> typeInfoPtrType ( ty ( 260 ) ) ty ( 268 ) |-> typeInfoPtrType ( ty ( 67 ) ) ty ( 269 ) |-> typeInfoRefType ( ty ( 260 ) ) ty ( 262 ) |-> typeInfoStructType ( "core::marker::PhantomData" , adtDef ( 135 ) ) ty ( 260 ) |-> typeInfoStructType ( "core::ptr::NonNull" , adtDef ( 85 ) ) ty ( 263 ) |-> typeInfoStructType ( "core::ptr::NonNull" , adtDef ( 85 ) ) ty ( 266 ) |-> typeInfoPtrType ( ty ( 1 ) ) ty ( 261 ) |-> typeInfoStructType ( "core::ptr::NonNull" , adtDef ( 85 ) ) ty ( 264 ) |-> typeInfoStructType ( "core::ptr::NonNull" , adtDef ( 85 ) ) ty ( 267 ) |-> typeInfoPtrType ( ty ( 260 ) ) ty ( 222 ) |-> typeInfoTupleType ( ty ( 223 ) ty ( 167 ) .Tys ) ty ( 220 ) |-> typeInfoRefType ( ty ( 71 ) ) ty ( 223 ) |-> typeInfoArrayType ( ty ( 0 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 6 ) ) ) ) ty ( 202 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 201 ) |-> typeInfoArrayType ( ty ( 6 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) ty ( 204 ) |-> typeInfoTupleType ( ty ( 0 ) ty ( 6 ) .Tys ) ty ( 203 ) |-> typeInfoRefType ( ty ( 64 ) ) ty ( 205 ) |-> typeInfoPtrType ( ty ( 131 ) ) ty ( 207 ) |-> typeInfoPtrType ( ty ( 50 ) ) ty ( 218 ) |-> typeInfoTupleType ( ty ( 104 ) ty ( 1 ) ty ( 81 ) .Tys ) ty ( 219 ) |-> typeInfoRefType ( ty ( 312 ) ) ty ( 236 ) |-> typeInfoPtrType ( ty ( 295 ) ) ty ( 231 ) |-> typeInfoPtrType ( ty ( 295 ) ) ty ( 232 ) |-> typeInfoPtrType ( ty ( 298 ) ) ty ( 233 ) |-> typeInfoPtrType ( ty ( 300 ) ) ty ( 250 ) |-> typeInfoArrayType ( ty ( 124 ) , noTyConst ) ty ( 251 ) |-> typeInfoPtrType ( ty ( 250 ) ) ty ( 254 ) |-> typeInfoTupleType ( ty ( 50 ) ty ( 6 ) .Tys ) ty ( 258 ) |-> typeInfoPtrType ( ty ( 167 ) ) ty ( 259 ) |-> typeInfoStructType ( "core::marker::PhantomData" , adtDef ( 135 ) ) ty ( 133 ) |-> typeInfoRefType ( ty ( 249 ) ) ty ( 132 ) |-> typeInfoPtrType ( ty ( 0 ) ) ty ( 131 ) |-> typeInfoStructType ( "pinocchio::account_info::Account" , adtDef ( 133 ) ) ty ( 130 ) |-> typeInfoPtrType ( ty ( 128 ) ) ty ( 136 ) |-> typeInfoPtrType ( ty ( 312 ) ) ty ( 135 ) |-> typeInfoRefType ( ty ( 312 ) ) ty ( 134 ) |-> typeInfoPtrType ( ty ( 249 ) ) ty ( 127 ) |-> typeInfoRefType ( ty ( 128 ) ) ty ( 124 ) |-> typeInfoStructType ( "pinocchio::account_info::AccountInfo" , adtDef ( 56 ) ) ty ( 126 ) |-> typeInfoRefType ( ty ( 124 ) ) ty ( 129 ) |-> typeInfoStructType ( "core::mem::ManuallyDrop" , adtDef ( 37 ) ) ty ( 128 ) |-> typeInfoUnionType ( "core::mem::MaybeUninit" , adtDef ( 38 ) ) ty ( 121 ) |-> typeInfoPtrType ( ty ( 124 ) ) ty ( 123 ) |-> typeInfoPtrType ( ty ( 128 ) ) ty ( 125 ) |-> typeInfoPtrType ( ty ( 124 ) ) ty ( 122 ) |-> typeInfoRefType ( ty ( 128 ) ) ty ( 167 ) |-> typeInfoArrayType ( ty ( 0 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b" \x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 2 ) ) ) ) ty ( 119 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) ty ( 115 ) |-> typeInfoRefType ( ty ( 108 ) ) ty ( 114 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 117 ) |-> typeInfoStructType ( "core::iter::Enumerate" , adtDef ( 83 ) ) ty ( 116 ) |-> typeInfoTupleType ( ty ( 1 ) ty ( 6 ) .Tys ) ty ( 111 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 110 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 113 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 112 ) |-> typeInfoRefType ( ty ( 117 ) ) ty ( 101 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 102 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 105 ) |-> typeInfoRefType ( ty ( 114 ) ) ty ( 106 ) |-> typeInfoRefType ( ty ( 104 ) ) ty ( 104 ) |-> typeInfoRefType ( ty ( 167 ) ) ty ( 109 ) |-> typeInfoTupleType ( ty ( 1 ) ty ( 104 ) .Tys ) ty ( 108 ) |-> typeInfoStructType ( "core::slice::Iter" , adtDef ( 86 ) ) ty ( 150 ) |-> typeInfoTupleType ( ty ( 62 ) ty ( 0 ) .Tys ) ty ( 152 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 140 ) |-> typeInfoRefType ( ty ( 0 ) ) ty ( 149 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 195 ) |-> typeInfoArrayType ( ty ( 167 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) ty ( 185 ) |-> typeInfoTupleType ( ty ( 62 ) ty ( 152 ) ty ( 62 ) ty ( 62 ) ty ( 65 ) .Tys ) ty ( 186 ) |-> typeInfoRefType ( ty ( 50 ) ) ty ( 8 ) |-> typeInfoEnumType ( "pinocchio::program_error::ProgramError" , adtDef ( 2 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) Discriminant ( variantIdx ( 2 ) , 2 ) Discriminant ( variantIdx ( 3 ) , 3 ) Discriminant ( variantIdx ( 4 ) , 4 ) Discriminant ( variantIdx ( 5 ) , 5 ) Discriminant ( variantIdx ( 6 ) , 6 ) Discriminant ( variantIdx ( 7 ) , 7 ) Discriminant ( variantIdx ( 8 ) , 8 ) Discriminant ( variantIdx ( 9 ) , 9 ) Discriminant ( variantIdx ( 10 ) , 10 ) Discriminant ( variantIdx ( 11 ) , 11 ) Discriminant ( variantIdx ( 12 ) , 12 ) Discriminant ( variantIdx ( 13 ) , 13 ) Discriminant ( variantIdx ( 14 ) , 14 ) Discriminant ( variantIdx ( 15 ) , 15 ) Discriminant ( variantIdx ( 16 ) , 16 ) Discriminant ( variantIdx ( 17 ) , 17 ) Discriminant ( variantIdx ( 18 ) , 18 ) Discriminant ( variantIdx ( 19 ) , 19 ) Discriminant ( variantIdx ( 20 ) , 20 ) Discriminant ( variantIdx ( 21 ) , 21 ) Discriminant ( variantIdx ( 22 ) , 22 ) Discriminant ( variantIdx ( 23 ) , 23 ) Discriminant ( variantIdx ( 24 ) , 24 ) Discriminant ( variantIdx ( 25 ) , 25 ) .Discriminants ) ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeBool ) ty ( 5 ) |-> typeInfoPtrType ( ty ( 0 ) ) ty ( 0 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) ty ( 7 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) ty ( 1 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) ty ( 82 ) |-> typeInfoPtrType ( ty ( 249 ) ) ty ( 80 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 81 ) |-> typeInfoRefType ( ty ( 249 ) ) ty ( 87 ) |-> typeInfoRefType ( ty ( 301 ) ) ty ( 85 ) |-> typeInfoPtrType ( ty ( 13 ) ) ty ( 89 ) |-> typeInfoRefType ( ty ( 302 ) ) ty ( 90 ) |-> typeInfoRefType ( ty ( 303 ) ) ty ( 97 ) |-> typeInfoEnumType ( "spl_token_interface::state::account_state::AccountState" , adtDef ( 124 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) Discriminant ( variantIdx ( 2 ) , 2 ) .Discriminants ) ty ( 92 ) |-> typeInfoRefType ( ty ( 306 ) ) ty ( 91 ) |-> typeInfoRefType ( ty ( 304 ) ) ty ( 93 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 94 ) |-> typeInfoPtrType ( ty ( 13 ) ) ty ( 95 ) |-> typeInfoStructType ( "core::fmt::Arguments" , adtDef ( 22 ) ) ty ( 10 ) |-> typeInfoStructType ( "core::array::TryFromSliceError" , adtDef ( 130 ) ) ty ( 17 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 12 ) |-> typeInfoEnumType ( "spl_token_interface::error::TokenError" , adtDef ( 47 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) Discriminant ( variantIdx ( 2 ) , 2 ) Discriminant ( variantIdx ( 3 ) , 3 ) Discriminant ( variantIdx ( 4 ) , 4 ) Discriminant ( variantIdx ( 5 ) , 5 ) Discriminant ( variantIdx ( 6 ) , 6 ) Discriminant ( variantIdx ( 7 ) , 7 ) Discriminant ( variantIdx ( 8 ) , 8 ) Discriminant ( variantIdx ( 9 ) , 9 ) Discriminant ( variantIdx ( 10 ) , 10 ) Discriminant ( variantIdx ( 11 ) , 11 ) Discriminant ( variantIdx ( 12 ) , 12 ) Discriminant ( variantIdx ( 13 ) , 13 ) Discriminant ( variantIdx ( 14 ) , 14 ) Discriminant ( variantIdx ( 15 ) , 15 ) Discriminant ( variantIdx ( 16 ) , 16 ) Discriminant ( variantIdx ( 17 ) , 17 ) Discriminant ( variantIdx ( 18 ) , 18 ) Discriminant ( variantIdx ( 19 ) , 19 ) .Discriminants ) ty ( 13 ) |-> typeInfoTupleType ( .Tys ) ty ( 19 ) |-> typeInfoArrayType ( ty ( 0 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 5 ) ) ) ) ty ( 14 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 15 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 26 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 43 ) |-> typeInfoTupleType ( ty ( 39 ) .Tys ) ty ( 41 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 28 ) |-> typeInfoTupleType ( ty ( 24 ) .Tys ) ty ( 29 ) |-> typeInfoRefType ( ty ( 295 ) ) ty ( 48 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 20 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 49 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 21 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 46 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 22 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) ty ( 47 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 23 ) |-> typeInfoTupleType ( ty ( 10 ) .Tys ) ty ( 44 ) |-> typeInfoEnumType ( "core::convert::Infallible" , adtDef ( 112 ) , .Discriminants ) ty ( 24 ) |-> typeInfoRefType ( ty ( 295 ) ) ty ( 45 ) |-> typeInfoTupleType ( ty ( 140 ) ty ( 81 ) .Tys ) ty ( 38 ) |-> typeInfoTupleType ( ty ( 34 ) .Tys ) ty ( 39 ) |-> typeInfoRefType ( ty ( 300 ) ) ty ( 33 ) |-> typeInfoTupleType ( ty ( 29 ) .Tys ) ty ( 36 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 31 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 34 ) |-> typeInfoRefType ( ty ( 298 ) ) ty ( 78 ) |-> typeInfoRefType ( ty ( 19 ) ) ty ( 79 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 76 ) |-> typeInfoRefType ( ty ( 195 ) ) ty ( 74 ) |-> typeInfoPtrType ( ty ( 68 ) ) ty ( 77 ) |-> typeInfoPtrType ( ty ( 19 ) ) ty ( 70 ) |-> typeInfoRefType ( ty ( 68 ) ) ty ( 73 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 71 ) |-> typeInfoStructType ( "core::ops::Range" , adtDef ( 50 ) ) ty ( 68 ) |-> typeInfoArrayType ( ty ( 167 ) , noTyConst ) ty ( 50 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU64 ) ) ty ( 52 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 51 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 54 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 53 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 56 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 55 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) ty ( 58 ) |-> typeInfoRefType ( ty ( 97 ) ) ty ( 64 ) |-> typeInfoStructType ( "core::slice::Iter" , adtDef ( 86 ) ) ty ( 65 ) |-> typeInfoRefType ( ty ( 250 ) ) ty ( 67 ) |-> typeInfoPtrType ( ty ( 167 ) ) ty ( 61 ) |-> typeInfoRefType ( ty ( 62 ) ) ty ( 62 ) |-> typeInfoRefType ( ty ( 124 ) ) ty ( 305 ) |-> typeInfoStructType ( "core::fmt::rt::Argument" , adtDef ( 120 ) ) + ty ( 302 ) |-> typeInfoArrayType ( ty ( 87 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x01\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 3 ) ) ) ) + ty ( 307 ) |-> typeInfoRefType ( ty ( 308 ) ) + ty ( 304 ) |-> typeInfoArrayType ( ty ( 305 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x00\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 4 ) ) ) ) + ty ( 309 ) |-> typeInfoStructType ( "core::fmt::rt::Placeholder" , adtDef ( 121 ) ) + ty ( 306 ) |-> typeInfoArrayType ( ty ( 305 ) , noTyConst ) + ty ( 308 ) |-> typeInfoArrayType ( ty ( 309 ) , noTyConst ) + ty ( 301 ) |-> typeInfoPrimitiveType ( primTypeStr ) + ty ( 303 ) |-> typeInfoArrayType ( ty ( 87 ) , noTyConst ) + ty ( 300 ) |-> typeInfoStructType ( "spl_token_interface::state::mint::Mint" , adtDef ( 115 ) ) + ty ( 312 ) |-> typeInfoArrayType ( ty ( 128 ) , noTyConst ) + ty ( 274 ) |-> typeInfoRefType ( ty ( 263 ) ) + ty ( 275 ) |-> typeInfoPtrType ( ty ( 121 ) ) + ty ( 270 ) |-> typeInfoPtrType ( ty ( 67 ) ) + ty ( 271 ) |-> typeInfoPtrType ( ty ( 263 ) ) + ty ( 272 ) |-> typeInfoPtrType ( ty ( 263 ) ) + ty ( 273 ) |-> typeInfoPtrType ( ty ( 121 ) ) + ty ( 294 ) |-> typeInfoStructType ( "core::panic::Location" , adtDef ( 109 ) ) + ty ( 246 ) |-> typeInfoEnumType ( "core::cmp::Ordering" , adtDef ( 127 ) , Discriminant ( variantIdx ( 0 ) , 255 ) Discriminant ( variantIdx ( 1 ) , 0 ) Discriminant ( variantIdx ( 2 ) , 1 ) .Discriminants ) + ty ( 295 ) |-> typeInfoStructType ( "spl_token_interface::state::account::Account" , adtDef ( 111 ) ) + ty ( 245 ) |-> typeInfoRefType ( ty ( 81 ) ) + ty ( 293 ) |-> typeInfoRefType ( ty ( 294 ) ) + ty ( 247 ) |-> typeInfoRefType ( ty ( 1 ) ) + ty ( 242 ) |-> typeInfoArrayType ( ty ( 128 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x80\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 1 ) ) ) ) + ty ( 243 ) |-> typeInfoRefType ( ty ( 242 ) ) + ty ( 298 ) |-> typeInfoStructType ( "spl_token_interface::state::multisig::Multisig" , adtDef ( 114 ) ) + ty ( 249 ) |-> typeInfoArrayType ( ty ( 0 ) , noTyConst ) + ty ( 244 ) |-> typeInfoRefType ( ty ( 242 ) ) + ty ( 280 ) |-> typeInfoTupleType ( ty ( 247 ) ty ( 247 ) .Tys ) + ty ( 281 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI8 ) ) + ty ( 283 ) |-> typeInfoRefType ( ty ( 205 ) ) + ty ( 286 ) |-> typeInfoPtrType ( ty ( 131 ) ) + ty ( 265 ) |-> typeInfoPtrType ( ty ( 260 ) ) + ty ( 268 ) |-> typeInfoPtrType ( ty ( 67 ) ) + ty ( 269 ) |-> typeInfoRefType ( ty ( 260 ) ) + ty ( 262 ) |-> typeInfoStructType ( "core::marker::PhantomData" , adtDef ( 135 ) ) + ty ( 260 ) |-> typeInfoStructType ( "core::ptr::NonNull" , adtDef ( 85 ) ) + ty ( 263 ) |-> typeInfoStructType ( "core::ptr::NonNull" , adtDef ( 85 ) ) + ty ( 266 ) |-> typeInfoPtrType ( ty ( 1 ) ) + ty ( 261 ) |-> typeInfoStructType ( "core::ptr::NonNull" , adtDef ( 85 ) ) + ty ( 264 ) |-> typeInfoStructType ( "core::ptr::NonNull" , adtDef ( 85 ) ) + ty ( 267 ) |-> typeInfoPtrType ( ty ( 260 ) ) + ty ( 222 ) |-> typeInfoTupleType ( ty ( 223 ) ty ( 167 ) .Tys ) + ty ( 220 ) |-> typeInfoRefType ( ty ( 71 ) ) + ty ( 223 ) |-> typeInfoArrayType ( ty ( 0 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x04\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 6 ) ) ) ) + ty ( 202 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 201 ) |-> typeInfoArrayType ( ty ( 6 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) + ty ( 204 ) |-> typeInfoTupleType ( ty ( 0 ) ty ( 6 ) .Tys ) + ty ( 203 ) |-> typeInfoRefType ( ty ( 64 ) ) + ty ( 205 ) |-> typeInfoPtrType ( ty ( 131 ) ) + ty ( 207 ) |-> typeInfoPtrType ( ty ( 50 ) ) + ty ( 218 ) |-> typeInfoTupleType ( ty ( 104 ) ty ( 1 ) ty ( 81 ) .Tys ) + ty ( 219 ) |-> typeInfoRefType ( ty ( 312 ) ) + ty ( 236 ) |-> typeInfoPtrType ( ty ( 295 ) ) + ty ( 231 ) |-> typeInfoPtrType ( ty ( 295 ) ) + ty ( 232 ) |-> typeInfoPtrType ( ty ( 298 ) ) + ty ( 233 ) |-> typeInfoPtrType ( ty ( 300 ) ) + ty ( 250 ) |-> typeInfoArrayType ( ty ( 124 ) , noTyConst ) + ty ( 251 ) |-> typeInfoPtrType ( ty ( 250 ) ) + ty ( 254 ) |-> typeInfoTupleType ( ty ( 50 ) ty ( 6 ) .Tys ) + ty ( 258 ) |-> typeInfoPtrType ( ty ( 167 ) ) + ty ( 259 ) |-> typeInfoStructType ( "core::marker::PhantomData" , adtDef ( 135 ) ) + ty ( 133 ) |-> typeInfoRefType ( ty ( 249 ) ) + ty ( 132 ) |-> typeInfoPtrType ( ty ( 0 ) ) + ty ( 131 ) |-> typeInfoStructType ( "pinocchio::account_info::Account" , adtDef ( 133 ) ) + ty ( 130 ) |-> typeInfoPtrType ( ty ( 128 ) ) + ty ( 136 ) |-> typeInfoPtrType ( ty ( 312 ) ) + ty ( 135 ) |-> typeInfoRefType ( ty ( 312 ) ) + ty ( 134 ) |-> typeInfoPtrType ( ty ( 249 ) ) + ty ( 127 ) |-> typeInfoRefType ( ty ( 128 ) ) + ty ( 124 ) |-> typeInfoStructType ( "pinocchio::account_info::AccountInfo" , adtDef ( 56 ) ) + ty ( 126 ) |-> typeInfoRefType ( ty ( 124 ) ) + ty ( 129 ) |-> typeInfoStructType ( "core::mem::ManuallyDrop" , adtDef ( 37 ) ) + ty ( 128 ) |-> typeInfoUnionType ( "core::mem::MaybeUninit" , adtDef ( 38 ) ) + ty ( 121 ) |-> typeInfoPtrType ( ty ( 124 ) ) + ty ( 123 ) |-> typeInfoPtrType ( ty ( 128 ) ) + ty ( 125 ) |-> typeInfoPtrType ( ty ( 124 ) ) + ty ( 122 ) |-> typeInfoRefType ( ty ( 128 ) ) + ty ( 167 ) |-> typeInfoArrayType ( ty ( 0 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b" \x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 2 ) ) ) ) + ty ( 119 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyI32 ) ) + ty ( 115 ) |-> typeInfoRefType ( ty ( 108 ) ) + ty ( 114 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 117 ) |-> typeInfoStructType ( "core::iter::Enumerate" , adtDef ( 83 ) ) + ty ( 116 ) |-> typeInfoTupleType ( ty ( 1 ) ty ( 6 ) .Tys ) + ty ( 111 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 110 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 113 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 112 ) |-> typeInfoRefType ( ty ( 117 ) ) + ty ( 101 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 102 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 105 ) |-> typeInfoRefType ( ty ( 114 ) ) + ty ( 106 ) |-> typeInfoRefType ( ty ( 104 ) ) + ty ( 104 ) |-> typeInfoRefType ( ty ( 167 ) ) + ty ( 109 ) |-> typeInfoTupleType ( ty ( 1 ) ty ( 104 ) .Tys ) + ty ( 108 ) |-> typeInfoStructType ( "core::slice::Iter" , adtDef ( 86 ) ) + ty ( 150 ) |-> typeInfoTupleType ( ty ( 62 ) ty ( 0 ) .Tys ) + ty ( 152 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 140 ) |-> typeInfoRefType ( ty ( 0 ) ) + ty ( 149 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 195 ) |-> typeInfoArrayType ( ty ( 167 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x0b\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 0 ) ) ) ) + ty ( 185 ) |-> typeInfoTupleType ( ty ( 62 ) ty ( 152 ) ty ( 62 ) ty ( 62 ) ty ( 65 ) .Tys ) + ty ( 186 ) |-> typeInfoRefType ( ty ( 50 ) ) + ty ( 8 ) |-> typeInfoEnumType ( "pinocchio::program_error::ProgramError" , adtDef ( 2 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) Discriminant ( variantIdx ( 2 ) , 2 ) Discriminant ( variantIdx ( 3 ) , 3 ) Discriminant ( variantIdx ( 4 ) , 4 ) Discriminant ( variantIdx ( 5 ) , 5 ) Discriminant ( variantIdx ( 6 ) , 6 ) Discriminant ( variantIdx ( 7 ) , 7 ) Discriminant ( variantIdx ( 8 ) , 8 ) Discriminant ( variantIdx ( 9 ) , 9 ) Discriminant ( variantIdx ( 10 ) , 10 ) Discriminant ( variantIdx ( 11 ) , 11 ) Discriminant ( variantIdx ( 12 ) , 12 ) Discriminant ( variantIdx ( 13 ) , 13 ) Discriminant ( variantIdx ( 14 ) , 14 ) Discriminant ( variantIdx ( 15 ) , 15 ) Discriminant ( variantIdx ( 16 ) , 16 ) Discriminant ( variantIdx ( 17 ) , 17 ) Discriminant ( variantIdx ( 18 ) , 18 ) Discriminant ( variantIdx ( 19 ) , 19 ) Discriminant ( variantIdx ( 20 ) , 20 ) Discriminant ( variantIdx ( 21 ) , 21 ) Discriminant ( variantIdx ( 22 ) , 22 ) Discriminant ( variantIdx ( 23 ) , 23 ) Discriminant ( variantIdx ( 24 ) , 24 ) Discriminant ( variantIdx ( 25 ) , 25 ) .Discriminants ) + ty ( 6 ) |-> typeInfoPrimitiveType ( primTypeBool ) + ty ( 5 ) |-> typeInfoPtrType ( ty ( 0 ) ) + ty ( 0 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU8 ) ) + ty ( 7 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU32 ) ) + ty ( 1 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyUsize ) ) + ty ( 82 ) |-> typeInfoPtrType ( ty ( 249 ) ) + ty ( 80 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 81 ) |-> typeInfoRefType ( ty ( 249 ) ) + ty ( 87 ) |-> typeInfoRefType ( ty ( 301 ) ) + ty ( 85 ) |-> typeInfoPtrType ( ty ( 13 ) ) + ty ( 89 ) |-> typeInfoRefType ( ty ( 302 ) ) + ty ( 90 ) |-> typeInfoRefType ( ty ( 303 ) ) + ty ( 97 ) |-> typeInfoEnumType ( "spl_token_interface::state::account_state::AccountState" , adtDef ( 124 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) Discriminant ( variantIdx ( 2 ) , 2 ) .Discriminants ) + ty ( 92 ) |-> typeInfoRefType ( ty ( 306 ) ) + ty ( 91 ) |-> typeInfoRefType ( ty ( 304 ) ) + ty ( 93 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 94 ) |-> typeInfoPtrType ( ty ( 13 ) ) + ty ( 95 ) |-> typeInfoStructType ( "core::fmt::Arguments" , adtDef ( 22 ) ) + ty ( 10 ) |-> typeInfoStructType ( "core::array::TryFromSliceError" , adtDef ( 130 ) ) + ty ( 17 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 12 ) |-> typeInfoEnumType ( "spl_token_interface::error::TokenError" , adtDef ( 47 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) Discriminant ( variantIdx ( 2 ) , 2 ) Discriminant ( variantIdx ( 3 ) , 3 ) Discriminant ( variantIdx ( 4 ) , 4 ) Discriminant ( variantIdx ( 5 ) , 5 ) Discriminant ( variantIdx ( 6 ) , 6 ) Discriminant ( variantIdx ( 7 ) , 7 ) Discriminant ( variantIdx ( 8 ) , 8 ) Discriminant ( variantIdx ( 9 ) , 9 ) Discriminant ( variantIdx ( 10 ) , 10 ) Discriminant ( variantIdx ( 11 ) , 11 ) Discriminant ( variantIdx ( 12 ) , 12 ) Discriminant ( variantIdx ( 13 ) , 13 ) Discriminant ( variantIdx ( 14 ) , 14 ) Discriminant ( variantIdx ( 15 ) , 15 ) Discriminant ( variantIdx ( 16 ) , 16 ) Discriminant ( variantIdx ( 17 ) , 17 ) Discriminant ( variantIdx ( 18 ) , 18 ) Discriminant ( variantIdx ( 19 ) , 19 ) .Discriminants ) + ty ( 13 ) |-> typeInfoTupleType ( .Tys ) + ty ( 19 ) |-> typeInfoArrayType ( ty ( 0 ) , someTyConst ( tyConst ( ... kind: tyConstKindValue ( ty ( 1 ) , allocation ( ... bytes: b"\x08\x00\x00\x00\x00\x00\x00\x00" , provenance: provenanceMap ( ... ptrs: .ProvenanceMapEntries ) , align: align ( 8 ) , mutability: mutabilityMut ) ) , id: tyConstId ( 5 ) ) ) ) + ty ( 14 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 15 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 26 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 43 ) |-> typeInfoTupleType ( ty ( 39 ) .Tys ) + ty ( 41 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 28 ) |-> typeInfoTupleType ( ty ( 24 ) .Tys ) + ty ( 29 ) |-> typeInfoRefType ( ty ( 295 ) ) + ty ( 48 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 20 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 49 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 21 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 46 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 22 ) |-> typeInfoPrimitiveType ( primTypeInt ( intTyIsize ) ) + ty ( 47 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 23 ) |-> typeInfoTupleType ( ty ( 10 ) .Tys ) + ty ( 44 ) |-> typeInfoEnumType ( "core::convert::Infallible" , adtDef ( 112 ) , .Discriminants ) + ty ( 24 ) |-> typeInfoRefType ( ty ( 295 ) ) + ty ( 45 ) |-> typeInfoTupleType ( ty ( 140 ) ty ( 81 ) .Tys ) + ty ( 38 ) |-> typeInfoTupleType ( ty ( 34 ) .Tys ) + ty ( 39 ) |-> typeInfoRefType ( ty ( 300 ) ) + ty ( 33 ) |-> typeInfoTupleType ( ty ( 29 ) .Tys ) + ty ( 36 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 31 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 34 ) |-> typeInfoRefType ( ty ( 298 ) ) + ty ( 78 ) |-> typeInfoRefType ( ty ( 19 ) ) + ty ( 79 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 76 ) |-> typeInfoRefType ( ty ( 195 ) ) + ty ( 74 ) |-> typeInfoPtrType ( ty ( 68 ) ) + ty ( 77 ) |-> typeInfoPtrType ( ty ( 19 ) ) + ty ( 70 ) |-> typeInfoRefType ( ty ( 68 ) ) + ty ( 73 ) |-> typeInfoEnumType ( "core::option::Option" , adtDef ( 16 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 71 ) |-> typeInfoStructType ( "core::ops::Range" , adtDef ( 50 ) ) + ty ( 68 ) |-> typeInfoArrayType ( ty ( 167 ) , noTyConst ) + ty ( 50 ) |-> typeInfoPrimitiveType ( primTypeUint ( uintTyU64 ) ) + ty ( 52 ) |-> typeInfoEnumType ( "core::result::Result" , adtDef ( 4 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 51 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 54 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 53 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 56 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 55 ) |-> typeInfoEnumType ( "core::ops::ControlFlow" , adtDef ( 9 ) , Discriminant ( variantIdx ( 0 ) , 0 ) Discriminant ( variantIdx ( 1 ) , 1 ) .Discriminants ) + ty ( 58 ) |-> typeInfoRefType ( ty ( 97 ) ) + ty ( 64 ) |-> typeInfoStructType ( "core::slice::Iter" , adtDef ( 86 ) ) + ty ( 65 ) |-> typeInfoRefType ( ty ( 250 ) ) + ty ( 67 ) |-> typeInfoPtrType ( ty ( 167 ) ) + ty ( 61 ) |-> typeInfoRefType ( ty ( 62 ) ) + ty ( 62 ) |-> typeInfoRefType ( ty ( 124 ) ) + ty ( 305 ) |-> typeInfoStructType ( "core::fmt::rt::Argument" , adtDef ( 120 ) ) - adtDef ( 115 ) |-> ty ( 300 ) adtDef ( 112 ) |-> ty ( 44 ) adtDef ( 111 ) |-> ty ( 295 ) adtDef ( 120 ) |-> ty ( 305 ) adtDef ( 121 ) |-> ty ( 309 ) adtDef ( 124 ) |-> ty ( 97 ) adtDef ( 127 ) |-> ty ( 246 ) adtDef ( 109 ) |-> ty ( 294 ) adtDef ( 135 ) |-> ty ( 262 ) adtDef ( 130 ) |-> ty ( 10 ) adtDef ( 133 ) |-> ty ( 131 ) adtDef ( 47 ) |-> ty ( 12 ) adtDef ( 56 ) |-> ty ( 124 ) adtDef ( 50 ) |-> ty ( 71 ) adtDef ( 22 ) |-> ty ( 95 ) adtDef ( 16 ) |-> ty ( 202 ) adtDef ( 37 ) |-> ty ( 129 ) adtDef ( 86 ) |-> ty ( 108 ) adtDef ( 85 ) |-> ty ( 264 ) adtDef ( 83 ) |-> ty ( 117 ) adtDef ( 9 ) |-> ty ( 113 ) adtDef ( 4 ) |-> ty ( 80 ) adtDef ( 2 ) |-> ty ( 8 ) adtDef ( 114 ) |-> ty ( 298 ) + adtDef ( 115 ) |-> ty ( 300 ) + adtDef ( 112 ) |-> ty ( 44 ) + adtDef ( 111 ) |-> ty ( 295 ) + adtDef ( 120 ) |-> ty ( 305 ) + adtDef ( 121 ) |-> ty ( 309 ) + adtDef ( 124 ) |-> ty ( 97 ) + adtDef ( 127 ) |-> ty ( 246 ) + adtDef ( 109 ) |-> ty ( 294 ) + adtDef ( 135 ) |-> ty ( 262 ) + adtDef ( 130 ) |-> ty ( 10 ) + adtDef ( 133 ) |-> ty ( 131 ) + adtDef ( 47 ) |-> ty ( 12 ) + adtDef ( 56 ) |-> ty ( 124 ) + adtDef ( 50 ) |-> ty ( 71 ) + adtDef ( 22 ) |-> ty ( 95 ) + adtDef ( 16 ) |-> ty ( 202 ) + adtDef ( 37 ) |-> ty ( 129 ) + adtDef ( 86 ) |-> ty ( 108 ) + adtDef ( 85 ) |-> ty ( 264 ) + adtDef ( 83 ) |-> ty ( 117 ) + adtDef ( 9 ) |-> ty ( 113 ) + adtDef ( 4 ) |-> ty ( 80 ) + adtDef ( 2 ) |-> ty ( 8 ) + adtDef ( 114 ) |-> ty ( 298 ) + ... - - GENERATEDCOUNTER_CELL:Int - + ... #applyUnOp ( unOpPtrMetadata , typedValue ( Reference ( 3 , place ( ... local: l span: 262 @@ -126,54 +428,9 @@ │ │ #EndProgram ~> .K │ -│ -│ RETVAL_CELL_5d410f2a -│ -│ -│ CURRENTFUNC_CELL_5d410f2a -│ -│ -│ -│ CURRENTBODY_CELL_5d410f2a -│ -│ -│ CALLER_CELL_5d410f2a -│ -│ -│ DEST_CELL_5d410f2a -│ -│ -│ TARGET_CELL_5d410f2a -│ -│ -│ UNWIND_CELL_5d410f2a -│ -│ -│ LOCALS_CELL_5d410f2a -│ -│ -│ -│ STACK_CELL_5d410f2a -│ -│ -│ MEMORY_CELL_5d410f2a -│ -│ -│ FUNCTIONS_CELL_5d410f2a -│ -│ -│ START_SYMBOL_CELL_5d410f2a -│ -│ -│ TYPES_CELL_5d410f2a -│ -│ -│ ADT_TO_TY_CELL_5d410f2a -│ +│ ... │ -│ -│ GENERATEDCOUNTER_CELL_5d410f2a -│ +│ ... │ │ #EndProgram ~> .K