kernels-bot commited on
Commit
2ece4f1
·
verified ·
1 Parent(s): b469f03

Uploaded using `kernel-builder`.

Browse files
Files changed (27) hide show
  1. build/torch212-cxx11-rocm71-x86_64-linux/_ops.py +3 -3
  2. build/torch212-cxx11-rocm71-x86_64-linux/{_paged_attention_rocm_8a730d9.abi3.so → _paged_attention_rocm_addf474.abi3.so} +2 -2
  3. build/torch212-cxx11-rocm71-x86_64-linux/metadata.json +6 -6
  4. build/torch212-cxx11-rocm71-x86_64-linux/metadata.json.sigstore +1 -1
  5. build/torch212-cxx11-rocm71-x86_64-linux/paged_attention/__init__.py +0 -26
  6. build/torch212-cxx11-rocm72-x86_64-linux/_ops.py +3 -3
  7. build/torch212-cxx11-rocm72-x86_64-linux/{_paged_attention_rocm_8a730d9.abi3.so → _paged_attention_rocm_addf474.abi3.so} +1 -1
  8. build/torch212-cxx11-rocm72-x86_64-linux/metadata.json +6 -6
  9. build/torch212-cxx11-rocm72-x86_64-linux/metadata.json.sigstore +1 -1
  10. build/torch212-cxx11-rocm72-x86_64-linux/paged_attention/__init__.py +0 -26
  11. build/torch213-cxx11-rocm71-x86_64-linux/_ops.py +3 -3
  12. build/torch213-cxx11-rocm71-x86_64-linux/{_paged_attention_rocm_8a730d9.abi3.so → _paged_attention_rocm_addf474.abi3.so} +1 -1
  13. build/torch213-cxx11-rocm71-x86_64-linux/metadata.json +6 -6
  14. build/torch213-cxx11-rocm71-x86_64-linux/metadata.json.sigstore +1 -1
  15. build/torch213-cxx11-rocm71-x86_64-linux/paged_attention/__init__.py +0 -26
  16. build/torch213-cxx11-rocm72-x86_64-linux/_ops.py +3 -3
  17. build/torch213-cxx11-rocm72-x86_64-linux/{_paged_attention_rocm_8a730d9.abi3.so → _paged_attention_rocm_addf474.abi3.so} +1 -1
  18. build/torch213-cxx11-rocm72-x86_64-linux/metadata.json +6 -6
  19. build/torch213-cxx11-rocm72-x86_64-linux/metadata.json.sigstore +1 -1
  20. build/torch213-cxx11-rocm72-x86_64-linux/paged_attention/__init__.py +0 -26
  21. build/torch214-cxx11-rocm72-x86_64-linux/__init__.py +21 -0
  22. build/torch214-cxx11-rocm72-x86_64-linux/_custom_ops.py +173 -0
  23. build/torch214-cxx11-rocm72-x86_64-linux/_ops.py +9 -0
  24. build/torch214-cxx11-rocm72-x86_64-linux/_paged_attention_rocm_addf474.abi3.so +3 -0
  25. build/torch214-cxx11-rocm72-x86_64-linux/metadata.json +41 -0
  26. build/torch214-cxx11-rocm72-x86_64-linux/metadata.json.sigstore +1 -0
  27. build/torch214-cxx11-rocm72-x86_64-linux/platforms.py +92 -0
build/torch212-cxx11-rocm71-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _paged_attention_rocm_8a730d9
3
- ops = torch.ops._paged_attention_rocm_8a730d9
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_paged_attention_rocm_8a730d9::{op_name}"
 
1
  import torch
2
+ from . import _paged_attention_rocm_addf474
3
+ ops = torch.ops._paged_attention_rocm_addf474
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_paged_attention_rocm_addf474::{op_name}"
build/torch212-cxx11-rocm71-x86_64-linux/{_paged_attention_rocm_8a730d9.abi3.so → _paged_attention_rocm_addf474.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:7dbc04dd84b09336d94941e8012bf86324ae28809a820f8fb18f39d47977c41c
3
- size 57126712
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f80d5b0224f1f9f7e3665c8a2c7b6d8a1badcbb51f3d4ca92aad51446563570b
3
+ size 57126720
build/torch212-cxx11-rocm71-x86_64-linux/metadata.json CHANGED
@@ -1,9 +1,10 @@
1
  {
2
  "name": "paged-attention",
3
- "id": "_paged_attention_rocm_8a730d9",
4
  "version": 1,
5
  "license": "Apache-2.0",
6
  "python-depends": [],
 
7
  "backend": {
8
  "type": "rocm",
9
  "archs": [
@@ -21,20 +22,19 @@
21
  "files": {
22
  "__init__.py": "oes6jQj02wGGtnJVomIE7ZJr2qnJmOm6CWurue5Vf6w=",
23
  "_custom_ops.py": "tnC6OR7TPhMV+tt8MyUyIH2gDIdxBzHT+1z1NUhA9EE=",
24
- "_ops.py": "0XxQOKt9j5JhJ652GcGMNY9DZL9aZ09tHhselfFjCgI=",
25
- "_paged_attention_rocm_8a730d9.abi3.so": "fbwE3YSwkzbZSUHoASv4YySuKICagg+PsY851Hl3xBw=",
26
- "paged_attention/__init__.py": "DFYPlrhXwYjEqCl/8n0SmWGZV8NFml5DPhMjKfv98GY=",
27
  "platforms.py": "NeAhENqA8yXHgy3EfkYP1Bkx1n6aStkExV9py7Jvdiw="
28
  }
29
  },
30
  "provenance": {
31
  "kernel-builder": {
32
  "version": "0.17.0-dev0",
33
- "sha": "81580bb92577f2f7228661ca2a221fc052375709",
34
  "dirty": false
35
  },
36
  "kernel": {
37
- "sha": "8a730d96c37560ccf1d3e09f7bbccdc886818f33",
38
  "dirty": false
39
  }
40
  }
 
1
  {
2
  "name": "paged-attention",
3
+ "id": "_paged_attention_rocm_addf474",
4
  "version": 1,
5
  "license": "Apache-2.0",
6
  "python-depends": [],
7
+ "kernel-depends": [],
8
  "backend": {
9
  "type": "rocm",
10
  "archs": [
 
22
  "files": {
23
  "__init__.py": "oes6jQj02wGGtnJVomIE7ZJr2qnJmOm6CWurue5Vf6w=",
24
  "_custom_ops.py": "tnC6OR7TPhMV+tt8MyUyIH2gDIdxBzHT+1z1NUhA9EE=",
25
+ "_ops.py": "xXa2NPhR4Ged5ClRhCjr1VLevF56KY0pVM4TumQRwJM=",
26
+ "_paged_attention_rocm_addf474.abi3.so": "+A1bAiTx+ffjZlyKLHttihuty7UfPUypKq1RRGVjVws=",
 
27
  "platforms.py": "NeAhENqA8yXHgy3EfkYP1Bkx1n6aStkExV9py7Jvdiw="
28
  }
29
  },
30
  "provenance": {
31
  "kernel-builder": {
32
  "version": "0.17.0-dev0",
33
+ "commit": "081dcd473f8eca27226eef1f9c47c45b86c756b5",
34
  "dirty": false
35
  },
36
  "kernel": {
37
+ "commit": "addf4741fafb55b4c101b15985dfaeea7c7c2f3a",
38
  "dirty": false
39
  }
40
  }
build/torch212-cxx11-rocm71-x86_64-linux/metadata.json.sigstore CHANGED
@@ -1 +1 @@
1
- {"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"certificate":{"rawBytes":"MIIHSTCCBtCgAwIBAgIULwpIs4faSGXtKAySGGIr+e8mfg8wCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwNzA4MTYwNzA2WhcNMjYwNzA4MTYxNzA2WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAECZRjLIk9/IJ+IpiECnDVILt7aqMS8/le7BNkNkncVckdvEE+tT9YWTlsc5OjkUoAMuQKxZvg1Urwsd5tn5Ca36OCBe8wggXrMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQU8jUrUNAtxsw108W2Oh4+EUyRpQIwHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wawYDVR0RAQH/BGEwX4ZdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDkGCisGAQQBg78wAQEEK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wHwYKKwYBBAGDvzABAgQRd29ya2Zsb3dfZGlzcGF0Y2gwNgYKKwYBBAGDvzABAwQoOGE3MzBkOTZjMzc1NjBjY2YxZDNlMDlmN2JiY2NkYzg4NjgxOGYzMzATBgorBgEEAYO/MAEEBAVCdWlsZDArBgorBgEEAYO/MAEFBB1odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTAdBgorBgEEAYO/MAEGBA9yZWZzL2hlYWRzL21haW4wOwYKKwYBBAGDvzABCAQtDCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMG0GCisGAQQBg78wAQkEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wAQoEKgwoOGE3MzBkOTZjMzc1NjBjY2YxZDNlMDlmN2JiY2NkYzg4NjgxOGYzMzAbBgorBgEEAYO/MAELBA0MC3NlbGYtaG9zdGVkMEAGCisGAQQBg78wAQwEMgwwaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MDgGCisGAQQBg78wAQ0EKgwoOGE3MzBkOTZjMzc1NjBjY2YxZDNlMDlmN2JiY2NkYzg4NjgxOGYzMzAfBgorBgEEAYO/MAEOBBEMD3JlZnMvaGVhZHMvbWFpbjAaBgorBgEEAYO/MAEPBAwMCjEwNzE0NzU1MjkwLgYKKwYBBAGDvzABEAQgDB5odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2UwGAYKKwYBBAGDvzABEQQKDAgyNTcyMDc0MzBtBgorBgEEAYO/MAESBF8MXWh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS8uZ2l0aHViL3dvcmtmbG93cy9idWlsZC55YW1sQHJlZnMvaGVhZHMvbWFpbjA4BgorBgEEAYO/MAETBCoMKDhhNzMwZDk2YzM3NTYwY2NmMWQzZTA5ZjdiYmNjZGM4ODY4MThmMzMwIQYKKwYBBAGDvzABFAQTDBF3b3JrZmxvd19kaXNwYXRjaDBkBgorBgEEAYO/MAEVBFYMVGh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS9hY3Rpb25zL3J1bnMvMjg5MzEyMjQ1MjkvYXR0ZW1wdHMvMTAWBgorBgEEAYO/MAEWBAgMBnB1YmxpYzBGBgorBgEEAYO/MAEYBDgMNnJlcG86aHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHk6cmVmOnJlZnMvaGVhZHMvbWFpbjCBiQYKKwYBBAHWeQIEAgR7BHkAdwB1AN09MGrGxxEyYxkeHJlnNwKiSl643jyt/4eKcoAvKe6OAAABn0J7pBYAAAQDAEYwRAIgXT+NKpVZ/tRgIj+pNvKt60UCI25AH5ztfGpTgfknMrkCIH06nt++goBTRif3TvD0ULTs/YQCDmKGnILkASFdmD5zMAoGCCqGSM49BAMDA2cAMGQCMAUyRIlnt/yOtbrLODUP/OkHTLVW1eQogzOwhxomeV+IEH37eazgYcRv2IySvk/ryQIwT3k0U/R3icoaQcjkpiMHZb8n/7EQK0rroLt8UrN0bnvdkezwmymAukgjQTCv3D2p"},"tlogEntries":[{"logIndex":"2117651204","logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="},"kindVersion":{"kind":"hashedrekord","version":"0.0.1"},"integratedTime":"1783526827","inclusionPromise":{"signedEntryTimestamp":"MEYCIQClvjTVvm9N+A0TUWAG/rnvxNKHFfYhD6Lf2Tnz4dR2QgIhAN561SOOJKtK+fFlsFoHES0JFqi29VaXAoW2c+eJzO1K"},"inclusionProof":{"logIndex":"1995746942","rootHash":"wWFjk22Mx1I2TMn7vqLeFl6FLkTeDh+nFUJHq23V9/g=","treeSize":"1995746962","hashes":["XTRgixjYQtUtzpQxwMsJUblm1/iYM3RlONwXkWgYTKw=","cHI8cQdp+SEyAR1I5DQp6pRjHbSWQ7RG+PJW3WAk1vc=","a+eoB6QYyi/a0XCFIjzTd2ldAJOtsc28lS+VJeyvyaE=","Ez3vEyORON1K5D8s+D5GIQCPIeK20m0KOYzVr/ysbS0=","2jGUF42pCXtDqv7iKuhj3Rig6Ji+/hwlPC1Z+w2SHmE=","b45Yk15aV7b+LbosIVuTiB+QG9N6BLVPbkkORs6BQ4E=","iTVxLjdKfh3O9/zGQYcl8ZiLgAXQqH47O/+TcmwMG80=","/sTZ63HouQwHkVKnMVu69bDAZFDaXFFTU+0E19qVwIk=","/KFnxc/v1cq5bNvi0/iQuLn531oJjO7rUmF5OpVX3LY=","x+9AUZgxi62WESaLvtXpdXkMmIB9tZ9YyOz4E/UU5eo=","qgAeIjt2z1ltKVqRPsASRHSgehdsArypqLNg79v9mKM=","3AcnHFwWkdjgLxYD9CksGlQadO/Lcr35iRlykj4cXfw=","QF8xujOLLPVnFEW0q4V8DtfovTxl4nGxcgVZKgDZ26w=","nxjt1WqBdXminu9ln0ZrTM1lZTtN2Psr9vrxxmXWPss=","v3Rnvwdy/iZuSJqQSjxAKTt0GBmX+4XksDaltKHxXs0=","lwFfNQVdnM+UXReXH9xyhoIKaRe1KrqgBwsxZGklig0=","frI9BMUdqa/KPLUCZ9yfDzZ2Z6tglf7SvThMJqEFBKU=","Bcvbbu+tDL+zr1H2q26c2ATmVu7v/f7JIFweUu7qDK8=","WajL3ZhY6ZX9meV3VTH9TkrbM31OF4o6+7foL0Uf6PI=","cyKMKBvHkQtwb2xR5svh+YppANOVdn7X8t4DuKMxICA=","+/VZ56MsIPxMiyLAodzKXo5TEWdQp36z89qLhpzloAo=","daxmZaajRpZV+JxHiOYZhJBiSKN5ucqjh2WnGbHhirw=","DOCeoSMovIvLExkhIvisow9AuNXgeWs4ECkyR6EcqYU="],"checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n1995746962\nwWFjk22Mx1I2TMn7vqLeFl6FLkTeDh+nFUJHq23V9/g=\n\n— rekor.sigstore.dev wNI9ajBGAiEAteuc+5pcJ5KsdcIsItkk7Qb/mV+iKZrORb5mNZ+kLaoCIQD//8vtO7Y43c9yOeS7vreWpO0h5jiRKLU7/lA0ceJLrw==\n"}},"canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJlOGI1MTkxNjRjYjdlZmM1MzA3ODZjMDViMDdjMWVmN2RhZWRhNjhlNDk4ZmNlYTkwNTQzYjZmNThhYjAyOTI3In19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FWUNJUUMrQzc3eEFVbDJWUkQxODRKc3grVWxZMmcxcGVBSEhJZjZRcC9nOUhKMC9RSWhBSkhzeDNSYm1UeWFEVC9waFp4Q0s5d1kwSmN1WGdCMmdHdFBzVHNJVWhLTSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaFRWRU5EUW5SRFowRjNTVUpCWjBsVlRIZHdTWE0wWm1GVFIxaDBTMEY1VTBkSFNYSXJaVGh0Wm1jNGQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDU2UVRSTlZGbDNUbnBCTWxkb1kwNU5hbGwzVG5wQk5FMVVXWGhPZWtFeVYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZEV2xKcVRFbHJPUzlKU2l0SmNHbEZRMjVFVmtsTWREZGhjVTFUT0M5c1pUZENUbXNLVG10dVkxWmphMlIyUlVVcmRGUTVXVmRVYkhOak5VOXFhMVZ2UVUxMVVVdDRXblpuTVZWeWQzTmtOWFJ1TlVOaE16WlBRMEpsT0hkbloxaHlUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlU0YWxWeUNsVk9RWFI0YzNjeE1EaFhNazlvTkN0RlZYbFNjRkZKZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJGM1dVUldVakJTUVZGSUwwSkhSWGRZTkZwa1lVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKb01Wb3laSEJpYldSdFdWZE9iQXBNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU1rb3hZVmQ0YTB4dWJHaGlWM2hCQ21OdFZtMWplVGx2V2xkR2EyTjVPWFJaVjJ4MVRVUnJSME5wYzBkQlVWRkNaemM0ZDBGUlJVVkxNbWd3WkVoQ2VrOXBPSFprUnpseVdsYzBkVmxYVGpBS1lWYzVkV041Tlc1aFdGSnZaRmRLTVdNeVZubFpNamwxWkVkV2RXUkROV3BpTWpCM1NIZFpTMHQzV1VKQ1FVZEVkbnBCUWtGblVWSmtNamw1WVRKYWN3cGlNMlJtV2tkc2VtTkhSakJaTW1kM1RtZFpTMHQzV1VKQ1FVZEVkbnBCUWtGM1VXOVBSMFV6VFhwQ2EwOVVXbXBOZW1NeFRtcENhbGt5V1hoYVJFNXNDazFFYkcxT01rcHBXVEpPYTFsNlp6Uk9hbWQ0VDBkWmVrMTZRVlJDWjI5eVFtZEZSVUZaVHk5TlFVVkZRa0ZXUTJSWGJITmFSRUZ5UW1kdmNrSm5SVVVLUVZsUEwwMUJSVVpDUWpGdlpGZGtibUZYTlc1YWJVWnFXbE01Y2xwWVNuVmFWM2g2VEZkT2RtSlhNVEZpYld3d1pWUkJaRUpuYjNKQ1owVkZRVmxQTHdwTlFVVkhRa0U1ZVZwWFducE1NbWhzV1ZkU2Vrd3lNV2hoVnpSM1QzZFpTMHQzV1VKQ1FVZEVkbnBCUWtOQlVYUkVRM1J2WkVoU2QyTjZiM1pNTTFKMkNtRXlWblZNYlVacVpFZHNkbUp1VFhWYU1td3dZVWhXYVdSWVRteGpiVTUyWW01U2JHSnVVWFZaTWpsMFRVY3dSME5wYzBkQlVWRkNaemM0ZDBGUmEwVUtXSGQ0WkdGSVVqQmpTRTAyVEhrNWJtRllVbTlrVjBsMVdUSTVkRXd5YURGYU1tUndZbTFrYlZsWFRteE1NblJzWTIwMWJHSklUWFJaTWpsMFlsaFdkUXBoV0ZJMVRIazFibUZZVW05a1YwbDJaREk1ZVdFeVduTmlNMlI2VERKS01XRlhlR3RNYm14b1lsZDRRV050Vm0xamVUbHZXbGRHYTJONU9YUlpWMngxQ2sxRVowZERhWE5IUVZGUlFtYzNPSGRCVVc5RlMyZDNiMDlIUlROTmVrSnJUMVJhYWsxNll6Rk9ha0pxV1RKWmVGcEVUbXhOUkd4dFRqSkthVmt5VG1zS1dYcG5ORTVxWjNoUFIxbDZUWHBCWWtKbmIzSkNaMFZGUVZsUEwwMUJSVXhDUVRCTlF6Tk9iR0pIV1hSaFJ6bDZaRWRXYTAxRlFVZERhWE5IUVZGUlFncG5OemgzUVZGM1JVMW5kM2RoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlUxRVowZERhWE5IUVZGUlFtYzNPSGRCVVRCRlMyZDNiMDlIUlROTmVrSnJUMVJhYWsxNll6Rk9ha0pxV1RKWmVGcEVUbXdLVFVSc2JVNHlTbWxaTWs1cldYcG5ORTVxWjNoUFIxbDZUWHBCWmtKbmIzSkNaMFZGUVZsUEwwMUJSVTlDUWtWTlJETktiRnB1VFhaaFIxWm9Xa2hOZGdwaVYwWndZbXBCWVVKbmIzSkNaMFZGUVZsUEwwMUJSVkJDUVhkTlEycEZkMDU2UlRCT2VsVXhUV3ByZDB4bldVdExkMWxDUWtGSFJIWjZRVUpGUVZGbkNrUkNOVzlrU0ZKM1kzcHZka3d5WkhCa1IyZ3hXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWM1IwRlpTMHQzV1VKQ1FVZEVkbnBCUWtWUlVVc0tSRUZuZVU1VVkzbE5SR013VFhwQ2RFSm5iM0pDWjBWRlFWbFBMMDFCUlZOQ1JqaE5XRmRvTUdSSVFucFBhVGgyV2pKc01HRklWbWxNYlU1MllsTTVid3BrVjJSdVlWYzFibHB0Um1wYVV6bHlXbGhLZFZwWGVIcE1WMDUyWWxjeE1XSnRiREJsVXpoMVdqSnNNR0ZJVm1sTU0yUjJZMjEwYldKSE9UTmplVGxwQ21SWGJITmFRelUxV1ZjeGMxRklTbXhhYmsxMllVZFdhRnBJVFhaaVYwWndZbXBCTkVKbmIzSkNaMFZGUVZsUEwwMUJSVlJDUTI5TlMwUm9hRTU2VFhjS1drUnJNbGw2VFROT1ZGbDNXVEpPYlUxWFVYcGFWRUUxV21wa2FWbHRUbXBhUjAwMFQwUlpORTFVYUcxTmVrMTNTVkZaUzB0M1dVSkNRVWRFZG5wQlFncEdRVkZVUkVKR00ySXpTbkphYlhoMlpERTVhMkZZVG5kWldGSnFZVVJDYTBKbmIzSkNaMFZGUVZsUEwwMUJSVlpDUmxsTlZrZG9NR1JJUW5wUGFUaDJDbG95YkRCaFNGWnBURzFPZG1KVE9XOWtWMlJ1WVZjMWJscHRSbXBhVXpseVdsaEtkVnBYZUhwTVYwNTJZbGN4TVdKdGJEQmxVemxvV1ROU2NHSXlOWG9LVEROS01XSnVUWFpOYW1jMVRYcEZlVTFxVVRGTmFtdDJXVmhTTUZwWE1YZGtTRTEyVFZSQlYwSm5iM0pDWjBWRlFWbFBMMDFCUlZkQ1FXZE5RbTVDTVFwWmJYaHdXWHBDUjBKbmIzSkNaMFZGUVZsUEwwMUJSVmxDUkdkTlRtNUtiR05IT0RaaFNGWnVXakpzZFZveVdtaFpNbFYyWVRKV2VXSnRWbk5qZVRGcUNtSXlNWFJrVnpWd1pFaHJObU50Vm0xUGJrcHNXbTVOZG1GSFZtaGFTRTEyWWxkR2NHSnFRMEpwVVZsTFMzZFpRa0pCU0ZkbFVVbEZRV2RTTjBKSWEwRUtaSGRDTVVGT01EbE5SM0pIZUhoRmVWbDRhMlZJU214dVRuZExhVk5zTmpRemFubDBMelJsUzJOdlFYWkxaVFpQUVVGQlFtNHdTamR3UWxsQlFVRlJSQXBCUlZsM1VrRkpaMWhVSzA1TGNGWmFMM1JTWjBscUszQk9ka3QwTmpCVlEwa3lOVUZJTlhwMFprZHdWR2RtYTI1TmNtdERTVWd3Tm01MEt5dG5iMEpVQ2xKcFpqTlVka1F3VlV4VWN5OVpVVU5FYlV0SGJrbE1hMEZUUm1SdFJEVjZUVUZ2UjBORGNVZFRUVFE1UWtGTlJFRXlZMEZOUjFGRFRVRlZlVkpKYkc0S2RDOTVUM1JpY2t4UFJGVlFMMDlyU0ZSTVZsY3haVkZ2WjNwUGQyaDRiMjFsVml0SlJVZ3pOMlZoZW1kWlkxSjJNa2w1VTNackwzSjVVVWwzVkROck1BcFZMMUl6YVdOdllWRmphbXR3YVUxSVdtSTRiaTgzUlZGTE1ISnliMHgwT0ZWeVRqQmliblprYTJWNmQyMTViVUYxYTJkcVVWUkRkak5FTW5BS0xTMHRMUzFGVGtRZ1EwVlNWRWxHU1VOQlZFVXRMUzB0TFFvPSJ9fX19"}],"timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyzADAgEAMIICwgYJKoZIhvcNAQcCoIICszCCAq8CAQMxDTALBglghkgBZQMEAgEwgbgGCyqGSIb3DQEJEAEEoIGoBIGlMIGiAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQg16HoFr1owWb1vk3Ld//1P1sPnaF5RGk6mngNqXQtE2cCFQDrcZAxDxFKmqCmlbIhUpo5cZjVmhgPMjAyNjA3MDgxNjA3MDdaMAMCAQGgMqQwMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhoAAxggHcMIIB2AIBATBRMDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAsGCWCGSAFlAwQCAaCB/DAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTI2MDcwODE2MDcwN1owLwYJKoZIhvcNAQkEMSIEIH9C3ZkrhkPom+VFUwRcGsAojT1wCi7rIPaM2dU1eN9lMIGOBgsqhkiG9w0BCRACLzF/MH0wezB5BCCF+Se8B6tiysO0Q1bBDvyBssaIP9p6uebYcNnROs0FtzBVMD2kOzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAgRoMGYCMQCjRavsjD3m/gvNK+RPR3/JoA6/clTImm1OHyf17Bz9cQnoLCmLbNjGwfXWygV9eGsCMQCesevUe4fwvimt9Y36/mOPpuwiYb3uoTsuIl22ks7VyRCS0pfaUFHh5y9pvHvJQEY="}]}},"messageSignature":{"messageDigest":{"algorithm":"SHA2_256","digest":"6LUZFky378UweGwFsHwe99rtpo5Jj86pBUO29YqwKSc="},"signature":"MEYCIQC+C77xAUl2VRD184Jsx+UlY2g1peAHHIf6Qp/g9HJ0/QIhAJHsx3RbmTyaDT/phZxCK9wY0JcuXgB2gGtPsTsIUhKM"}}
 
1
+ {"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json", "verificationMaterial":{"certificate":{"rawBytes":"MIIHSjCCBtGgAwIBAgIUXxhWrzZ6/JGQ/pdGq5624HAhx5YwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwODI3MDczNDQwWhcNMjYwODI3MDc0NDQwWjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEKK5IJe3qJz2dwxmW4oc4btUAeRYZBMZaOW2VCnwf02hFh8i7TuJXhcwb618tTDMLklnd3PRLAQGFjSw7DmJF36OCBfAwggXsMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUPuUmSu4ALrtOTCkbcelmTXO6xukwHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wawYDVR0RAQH/BGEwX4ZdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDkGCisGAQQBg78wAQEEK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wHwYKKwYBBAGDvzABAgQRd29ya2Zsb3dfZGlzcGF0Y2gwNgYKKwYBBAGDvzABAwQoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTATBgorBgEEAYO/MAEEBAVCdWlsZDArBgorBgEEAYO/MAEFBB1odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTAdBgorBgEEAYO/MAEGBA9yZWZzL2hlYWRzL21haW4wOwYKKwYBBAGDvzABCAQtDCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMG0GCisGAQQBg78wAQkEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wAQoEKgwoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTAbBgorBgEEAYO/MAELBA0MC3NlbGYtaG9zdGVkMEAGCisGAQQBg78wAQwEMgwwaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MDgGCisGAQQBg78wAQ0EKgwoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTAfBgorBgEEAYO/MAEOBBEMD3JlZnMvaGVhZHMvbWFpbjAaBgorBgEEAYO/MAEPBAwMCjEwNzE0NzU1MjkwLgYKKwYBBAGDvzABEAQgDB5odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2UwGAYKKwYBBAGDvzABEQQKDAgyNTcyMDc0MzBtBgorBgEEAYO/MAESBF8MXWh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS8uZ2l0aHViL3dvcmtmbG93cy9idWlsZC55YW1sQHJlZnMvaGVhZHMvbWFpbjA4BgorBgEEAYO/MAETBCoMKGFkZGY0NzQxZmFmYjU1YjRjMTAxYjE1OTg1ZGZhZWVhN2M3YzJmM2EwIQYKKwYBBAGDvzABFAQTDBF3b3JrZmxvd19kaXNwYXRjaDBkBgorBgEEAYO/MAEVBFYMVGh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS9hY3Rpb25zL3J1bnMvMzMwNDU0MTE3MDQvYXR0ZW1wdHMvMTAWBgorBgEEAYO/MAEWBAgMBnB1YmxpYzBGBgorBgEEAYO/MAEYBDgMNnJlcG86aHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHk6cmVmOnJlZnMvaGVhZHMvbWFpbjCBigYKKwYBBAHWeQIEAgR8BHoAeAB2AN09MGrGxxEyYxkeHJlnNwKiSl643jyt/4eKcoAvKe6OAAABoEIkda8AAAQDAEcwRQIhAM1EiisCO2Cg1TW5SAiQ8IQZwus/OW6hPH+BaVxPfiDIAiBrsUxOWjVdv70wuO/UEdAizS7rVBQYHl58rOCxeHjLgzAKBggqhkjOPQQDAwNnADBkAjA5N3NFRFKzJ2PXqKVPpJvmoGsATfkIZ5QpS8yABdBMQBRDvPi/7aR2CzlUHU8XdnkCMGNX64xl38R7YV7WTAZ+jx31DvccixFjRQgVq7TcT3Rg8d3HYoSpKsd3jUhpOSAW9w=="}, "tlogEntries":[{"logIndex":"2614420616", "logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="}, "kindVersion":{"kind":"hashedrekord", "version":"0.0.1"}, "integratedTime":"1787816081", "inclusionPromise":{"signedEntryTimestamp":"MEQCIDyATZ5K2U1yD3fGINTj3IpuVW8yoFbmaLjjZUuGpda9AiBHsXzWZUCkCEbhFKX1Kc/i4HqPmo+P/q1M5URkCnNMXA=="}, "inclusionProof":{"logIndex":"2492516354", "rootHash":"OqJr+psj51g+PjTlFF3b3IZR8CzkoXl1byKMfuqRV0o=", "treeSize":"2492516373", "hashes":["bS1pqAd6uEzW+Xlf239/4UcjojvI0jfgAJ4RR/yR60c=", "w4z7yfK1MB38S7f0aYWZZS62qo8Pb54Jo1HQZtCT6V0=", "jfESmqvX6RQV9h9tCqFJro3v3e+hHha2vCiS8lVJ2YM=", "GwL2i7wLQfDl3wreoC6I+bA2O8D3fT3rx0FGapraL6c=", "Q6PccntL+VtiUZ5Uk840ZwGiOsNrkdPcoo9L5Pol1CM=", "9Z0akIavSZQfGwx+qt9uXOimpUzrQUDuBG4WqxrUICw=", "5IX0hbRxcv4MfzwgxDV3FdWPmsCJk++fDlfjia6J5FM=", "JudKhBfUc6ZLff0dbtidJ1/UlyM2L1U1kpxAvQtZyg0=", "NSuKPSrhPDg3xoCPz74qzkB8LWy1aV46KTWus0HJYzQ=", "7TfDCaMWgEwSJEZd/e33b24919rF4IDJLmbqNNRNhZs=", "0HfdxDt/zGugZLIuHasrdLEW9s8OaTykSSqBEDFQXdw=", "SndbMKVtcTenAkwi2JBfGzD+mhexp1qJbRIY+A1JRIU=", "xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="], "checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n2492516373\nOqJr+psj51g+PjTlFF3b3IZR8CzkoXl1byKMfuqRV0o=\n\n— rekor.sigstore.dev wNI9ajBFAiEApjO8neOdPmPCWw2Yfo4h1ANakXF9PjXj9aXewZIgWloCIBJuS6HXxGPmR+4VXDaKme/tNiOxBD8QwsdRwwHDK4m2\n"}}, "canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiIyYTRmOWEyMTI1ZTRmMTZkZjI2ZjJjNmQ5NWI2ZmNmOGY0YmNkNDc1MDAxNDUyMWRmZmJiYjNiODhiNzExZDRjIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FUUNJSHdUNzY2S0FFZWErejduUGFyQzlZdC9rYTNzTWpEY2h5ajJPZ1NET1FJWUFpQVlrOUJPc0tkbTRyS3hFenZPMTJsVmRadTVtSGhINytTQkYyTzBNemdtL2c9PSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaFRha05EUW5SSFowRjNTVUpCWjBsVldIaG9WM0o2V2pZdlNrZFJMM0JrUjNFMU5qSTBTRUZvZURWWmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDlFU1ROTlJHTjZUa1JSZDFkb1kwNU5hbGwzVDBSSk0wMUVZekJPUkZGM1YycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZMU3pWSlNtVXpjVXA2TW1SM2VHMVhORzlqTkdKMFZVRmxVbGxhUWsxYVlVOVhNbFlLUTI1M1pqQXlhRVpvT0drM1ZIVktXR2hqZDJJMk1UaDBWRVJOVEd0c2JtUXpVRkpNUVZGSFJtcFRkemRFYlVwR016WlBRMEptUVhkbloxaHpUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlZRZFZWdENsTjFORUZNY25SUFZFTnJZbU5sYkcxVVdFODJlSFZyZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJGM1dVUldVakJTUVZGSUwwSkhSWGRZTkZwa1lVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKb01Wb3laSEJpYldSdFdWZE9iQXBNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU1rb3hZVmQ0YTB4dWJHaGlWM2hCQ21OdFZtMWplVGx2V2xkR2EyTjVPWFJaVjJ4MVRVUnJSME5wYzBkQlVWRkNaemM0ZDBGUlJVVkxNbWd3WkVoQ2VrOXBPSFprUnpseVdsYzBkVmxYVGpBS1lWYzVkV041Tlc1aFdGSnZaRmRLTVdNeVZubFpNamwxWkVkV2RXUkROV3BpTWpCM1NIZFpTMHQzV1VKQ1FVZEVkbnBCUWtGblVWSmtNamw1WVRKYWN3cGlNMlJtV2tkc2VtTkhSakJaTW1kM1RtZFpTMHQzV1VKQ1FVZEVkbnBCUWtGM1VXOVpWMUpyV21wUk0wNUVSbTFaVjFwcFRsUldhVTVIVFhoTlJFWnBDazFVVlRWUFJGWnJXbTFHYkZwWFJUTlplbVJxVFcxWmVsbFVRVlJDWjI5eVFtZEZSVUZaVHk5TlFVVkZRa0ZXUTJSWGJITmFSRUZ5UW1kdmNrSm5SVVVLUVZsUEwwMUJSVVpDUWpGdlpGZGtibUZYTlc1YWJVWnFXbE01Y2xwWVNuVmFWM2g2VEZkT2RtSlhNVEZpYld3d1pWUkJaRUpuYjNKQ1owVkZRVmxQTHdwTlFVVkhRa0U1ZVZwWFducE1NbWhzV1ZkU2Vrd3lNV2hoVnpSM1QzZFpTMHQzV1VKQ1FVZEVkbnBCUWtOQlVYUkVRM1J2WkVoU2QyTjZiM1pNTTFKMkNtRXlWblZNYlVacVpFZHNkbUp1VFhWYU1td3dZVWhXYVdSWVRteGpiVTUyWW01U2JHSnVVWFZaTWpsMFRVY3dSME5wYzBkQlVWRkNaemM0ZDBGUmEwVUtXSGQ0WkdGSVVqQmpTRTAyVEhrNWJtRllVbTlrVjBsMVdUSTVkRXd5YURGYU1tUndZbTFrYlZsWFRteE1NblJzWTIwMWJHSklUWFJaTWpsMFlsaFdkUXBoV0ZJMVRIazFibUZZVW05a1YwbDJaREk1ZVdFeVduTmlNMlI2VERKS01XRlhlR3RNYm14b1lsZDRRV050Vm0xamVUbHZXbGRHYTJONU9YUlpWMngxQ2sxRVowZERhWE5IUVZGUlFtYzNPSGRCVVc5RlMyZDNiMWxYVW10YWFsRXpUa1JHYlZsWFdtbE9WRlpwVGtkTmVFMUVSbWxOVkZVMVQwUldhMXB0Um13S1dsZEZNMWw2WkdwTmJWbDZXVlJCWWtKbmIzSkNaMFZGUVZsUEwwMUJSVXhDUVRCTlF6Tk9iR0pIV1hSaFJ6bDZaRWRXYTAxRlFVZERhWE5IUVZGUlFncG5OemgzUVZGM1JVMW5kM2RoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlUxRVowZERhWE5IUVZGUlFtYzNPSGRCVVRCRlMyZDNiMWxYVW10YWFsRXpUa1JHYlZsWFdtbE9WRlpwVGtkTmVFMUVSbWtLVFZSVk5VOUVWbXRhYlVac1dsZEZNMWw2WkdwTmJWbDZXVlJCWmtKbmIzSkNaMFZGUVZsUEwwMUJSVTlDUWtWTlJETktiRnB1VFhaaFIxWm9Xa2hOZGdwaVYwWndZbXBCWVVKbmIzSkNaMFZGUVZsUEwwMUJSVkJDUVhkTlEycEZkMDU2UlRCT2VsVXhUV3ByZDB4bldVdExkMWxDUWtGSFJIWjZRVUpGUVZGbkNrUkNOVzlrU0ZKM1kzcHZka3d5WkhCa1IyZ3hXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWM1IwRlpTMHQzV1VKQ1FVZEVkbnBCUWtWUlVVc0tSRUZuZVU1VVkzbE5SR013VFhwQ2RFSm5iM0pDWjBWRlFWbFBMMDFCUlZOQ1JqaE5XRmRvTUdSSVFucFBhVGgyV2pKc01HRklWbWxNYlU1MllsTTVid3BrVjJSdVlWYzFibHB0Um1wYVV6bHlXbGhLZFZwWGVIcE1WMDUyWWxjeE1XSnRiREJsVXpoMVdqSnNNR0ZJVm1sTU0yUjJZMjEwYldKSE9UTmplVGxwQ21SWGJITmFRelUxV1ZjeGMxRklTbXhhYmsxMllVZFdhRnBJVFhaaVYwWndZbXBCTkVKbmIzSkNaMFZGUVZsUEwwMUJSVlJDUTI5TlMwZEdhMXBIV1RBS1RucFJlRnB0Um0xWmFsVXhXV3BTYWsxVVFYaFpha1V4VDFSbk1WcEhXbWhhVjFab1RqSk5NMWw2U20xTk1rVjNTVkZaUzB0M1dVSkNRVWRFZG5wQlFncEdRVkZVUkVKR00ySXpTbkphYlhoMlpERTVhMkZZVG5kWldGSnFZVVJDYTBKbmIzSkNaMFZGUVZsUEwwMUJSVlpDUmxsTlZrZG9NR1JJUW5wUGFUaDJDbG95YkRCaFNGWnBURzFPZG1KVE9XOWtWMlJ1WVZjMWJscHRSbXBhVXpseVdsaEtkVnBYZUhwTVYwNTJZbGN4TVdKdGJEQmxVemxvV1ROU2NHSXlOWG9LVEROS01XSnVUWFpOZWsxM1RrUlZNRTFVUlROTlJGRjJXVmhTTUZwWE1YZGtTRTEyVFZSQlYwSm5iM0pDWjBWRlFWbFBMMDFCUlZkQ1FXZE5RbTVDTVFwWmJYaHdXWHBDUjBKbmIzSkNaMFZGUVZsUEwwMUJSVmxDUkdkTlRtNUtiR05IT0RaaFNGWnVXakpzZFZveVdtaFpNbFYyWVRKV2VXSnRWbk5qZVRGcUNtSXlNWFJrVnpWd1pFaHJObU50Vm0xUGJrcHNXbTVOZG1GSFZtaGFTRTEyWWxkR2NHSnFRMEpwWjFsTFMzZFpRa0pCU0ZkbFVVbEZRV2RTT0VKSWIwRUtaVUZDTWtGT01EbE5SM0pIZUhoRmVWbDRhMlZJU214dVRuZExhVk5zTmpRemFubDBMelJsUzJOdlFYWkxaVFpQUVVGQlFtOUZTV3RrWVRoQlFVRlJSQXBCUldOM1VsRkphRUZOTVVWcGFYTkRUekpEWnpGVVZ6VlRRV2xST0VsUlduZDFjeTlQVnpab1VFZ3JRbUZXZUZCbWFVUkpRV2xDY25OVmVFOVhhbFprQ25ZM01IZDFUeTlWUldSQmFYcFROM0pXUWxGWlNHdzFPSEpQUTNobFNHcE1aM3BCUzBKblozRm9hMnBQVUZGUlJFRjNUbTVCUkVKclFXcEJOVTR6VGtZS1VrWkxla295VUZoeFMxWlFjRXAyYlc5SGMwRlVabXRKV2pWUmNGTTRlVUZDWkVKTlVVSlNSSFpRYVM4M1lWSXlRM3BzVlVoVk9GaGtibXREVFVkT1dBbzJOSGhzTXpoU04xbFdOMWRVUVZvcmFuZ3pNVVIyWTJOcGVFWnFVbEZuVm5FM1ZHTlVNMUpuT0dRelNGbHZVM0JMYzJRemFsVm9jRTlUUVZjNWR6MDlDaTB0TFMwdFJVNUVJRU5GVWxSSlJrbERRVlJGTFMwdExTMEsifX19fQ=="}], "timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICxzADAgEAMIICvgYJKoZIhvcNAQcCoIICrzCCAqsCAQMxDTALBglghkgBZQMEAgEwgbcGCyqGSIb3DQEJEAEEoIGnBIGkMIGhAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgx/OTZ4NFliP7TZNVaLF5fF+Q5vDzdr0YxUkLU4NkBvMCFB2fLmMLihEEyZReSTdhfd20qFdcGA8yMDI2MDgyNzA3MzQ0MFowAwIBAaAypDAwLjEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MRUwEwYDVQQDEwxzaWdzdG9yZS10c2GgADGCAdkwggHVAgEBMFEwOTEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MSAwHgYDVQQDExdzaWdzdG9yZS10c2Etc2VsZnNpZ25lZAIUOhNULwyQYe68wUMvy4qOiyojiwwwCwYJYIZIAWUDBAIBoIH8MBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAcBgkqhkiG9w0BCQUxDxcNMjYwODI3MDczNDQwWjAvBgkqhkiG9w0BCQQxIgQgUBgkx9qQPLt8gi9+W0DQ436RJaaFNeWY3IpdGJkZEDQwgY4GCyqGSIb3DQEJEAIvMX8wfTB7MHkEIIX5J7wHq2LKw7RDVsEO/IGyxog/2nq55thw2dE6zQW3MFUwPaQ7MDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAoGCCqGSM49BAMCBGUwYwIwcArvYJezbwrO7Oa/KVhEL7RPtfLhz2NX5R7KvZePspinWVbjycLeZ5nCt8wf2vigAi9wWQS4UqxLPdYpo+9hcLat4q6z6tb994yhzSYoKD6g9MJML2H9r88bjkJvS1HB8A=="}]}}, "messageSignature":{"messageDigest":{"algorithm":"SHA2_256", "digest":"Kk+aISXk8W3ybyxtlbb8+PS81HUAFFId/7uzuItxHUw="}, "signature":"MEQCIHwT766KAEea+z7nParC9Yt/ka3sMjDchyj2OgSDOQIYAiAYk9BOsKdm4rKxEzvO12lVdZu5mHhH7+SBF2O0Mzgm/g=="}}
build/torch212-cxx11-rocm71-x86_64-linux/paged_attention/__init__.py DELETED
@@ -1,26 +0,0 @@
1
- import ctypes
2
- import importlib.util
3
- import sys
4
- from pathlib import Path
5
- from types import ModuleType
6
-
7
-
8
- def _import_from_path(file_path: Path) -> ModuleType:
9
- # We cannot use the module name as-is, after adding it to `sys.modules`,
10
- # it would also be used for other imports. So, we make a module name that
11
- # depends on the path for it to be unique using the hex-encoded hash of
12
- # the path.
13
- path_hash = "{:x}".format(ctypes.c_size_t(hash(file_path.absolute())).value)
14
- module_name = path_hash
15
- spec = importlib.util.spec_from_file_location(module_name, file_path)
16
- if spec is None:
17
- raise ImportError(f"Cannot load spec for {module_name} from {file_path}")
18
- module = importlib.util.module_from_spec(spec)
19
- if module is None:
20
- raise ImportError(f"Cannot load module {module_name} from spec")
21
- sys.modules[module_name] = module
22
- spec.loader.exec_module(module) # type: ignore
23
- return module
24
-
25
-
26
- globals().update(vars(_import_from_path(Path(__file__).parent.parent / "__init__.py")))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
build/torch212-cxx11-rocm72-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _paged_attention_rocm_8a730d9
3
- ops = torch.ops._paged_attention_rocm_8a730d9
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_paged_attention_rocm_8a730d9::{op_name}"
 
1
  import torch
2
+ from . import _paged_attention_rocm_addf474
3
+ ops = torch.ops._paged_attention_rocm_addf474
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_paged_attention_rocm_addf474::{op_name}"
build/torch212-cxx11-rocm72-x86_64-linux/{_paged_attention_rocm_8a730d9.abi3.so → _paged_attention_rocm_addf474.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:af5621a1d98caf7267a6a49f84e053703c023cd778908dd920a10509518c5916
3
  size 54803104
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5f15968423fdf39b12868bc00f0c9e4b5d1e829695c9b7a8291e975f7432eba2
3
  size 54803104
build/torch212-cxx11-rocm72-x86_64-linux/metadata.json CHANGED
@@ -1,9 +1,10 @@
1
  {
2
  "name": "paged-attention",
3
- "id": "_paged_attention_rocm_8a730d9",
4
  "version": 1,
5
  "license": "Apache-2.0",
6
  "python-depends": [],
 
7
  "backend": {
8
  "type": "rocm",
9
  "archs": [
@@ -21,20 +22,19 @@
21
  "files": {
22
  "__init__.py": "oes6jQj02wGGtnJVomIE7ZJr2qnJmOm6CWurue5Vf6w=",
23
  "_custom_ops.py": "tnC6OR7TPhMV+tt8MyUyIH2gDIdxBzHT+1z1NUhA9EE=",
24
- "_ops.py": "0XxQOKt9j5JhJ652GcGMNY9DZL9aZ09tHhselfFjCgI=",
25
- "_paged_attention_rocm_8a730d9.abi3.so": "r1YhodmMr3JnpqSfhOBTcDwCPNd4kI3ZIKEFCVGMWRY=",
26
- "paged_attention/__init__.py": "DFYPlrhXwYjEqCl/8n0SmWGZV8NFml5DPhMjKfv98GY=",
27
  "platforms.py": "NeAhENqA8yXHgy3EfkYP1Bkx1n6aStkExV9py7Jvdiw="
28
  }
29
  },
30
  "provenance": {
31
  "kernel-builder": {
32
  "version": "0.17.0-dev0",
33
- "sha": "81580bb92577f2f7228661ca2a221fc052375709",
34
  "dirty": false
35
  },
36
  "kernel": {
37
- "sha": "8a730d96c37560ccf1d3e09f7bbccdc886818f33",
38
  "dirty": false
39
  }
40
  }
 
1
  {
2
  "name": "paged-attention",
3
+ "id": "_paged_attention_rocm_addf474",
4
  "version": 1,
5
  "license": "Apache-2.0",
6
  "python-depends": [],
7
+ "kernel-depends": [],
8
  "backend": {
9
  "type": "rocm",
10
  "archs": [
 
22
  "files": {
23
  "__init__.py": "oes6jQj02wGGtnJVomIE7ZJr2qnJmOm6CWurue5Vf6w=",
24
  "_custom_ops.py": "tnC6OR7TPhMV+tt8MyUyIH2gDIdxBzHT+1z1NUhA9EE=",
25
+ "_ops.py": "xXa2NPhR4Ged5ClRhCjr1VLevF56KY0pVM4TumQRwJM=",
26
+ "_paged_attention_rocm_addf474.abi3.so": "XxWWhCP985sShovADwyeS10egpaVybeoKR6XX3Qy66I=",
 
27
  "platforms.py": "NeAhENqA8yXHgy3EfkYP1Bkx1n6aStkExV9py7Jvdiw="
28
  }
29
  },
30
  "provenance": {
31
  "kernel-builder": {
32
  "version": "0.17.0-dev0",
33
+ "commit": "081dcd473f8eca27226eef1f9c47c45b86c756b5",
34
  "dirty": false
35
  },
36
  "kernel": {
37
+ "commit": "addf4741fafb55b4c101b15985dfaeea7c7c2f3a",
38
  "dirty": false
39
  }
40
  }
build/torch212-cxx11-rocm72-x86_64-linux/metadata.json.sigstore CHANGED
@@ -1 +1 @@
1
- {"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"certificate":{"rawBytes":"MIIHSzCCBtGgAwIBAgIUVMvin/EQ+wdvlSa9NLOkBMtIDWkwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwNzA4MTYwNzA4WhcNMjYwNzA4MTYxNzA4WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEh+OdVMhXI2EfbvhFhHQRcVvwf6w0XWcePA4dSWlo9I0yVbqrHqkcG9yGuWPL6al8m5SIDjQju9UEZfF9+b74wqOCBfAwggXsMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUvoWrZI0giWGmiWwmlfpS1hw39jQwHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wawYDVR0RAQH/BGEwX4ZdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDkGCisGAQQBg78wAQEEK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wHwYKKwYBBAGDvzABAgQRd29ya2Zsb3dfZGlzcGF0Y2gwNgYKKwYBBAGDvzABAwQoOGE3MzBkOTZjMzc1NjBjY2YxZDNlMDlmN2JiY2NkYzg4NjgxOGYzMzATBgorBgEEAYO/MAEEBAVCdWlsZDArBgorBgEEAYO/MAEFBB1odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTAdBgorBgEEAYO/MAEGBA9yZWZzL2hlYWRzL21haW4wOwYKKwYBBAGDvzABCAQtDCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMG0GCisGAQQBg78wAQkEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wAQoEKgwoOGE3MzBkOTZjMzc1NjBjY2YxZDNlMDlmN2JiY2NkYzg4NjgxOGYzMzAbBgorBgEEAYO/MAELBA0MC3NlbGYtaG9zdGVkMEAGCisGAQQBg78wAQwEMgwwaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MDgGCisGAQQBg78wAQ0EKgwoOGE3MzBkOTZjMzc1NjBjY2YxZDNlMDlmN2JiY2NkYzg4NjgxOGYzMzAfBgorBgEEAYO/MAEOBBEMD3JlZnMvaGVhZHMvbWFpbjAaBgorBgEEAYO/MAEPBAwMCjEwNzE0NzU1MjkwLgYKKwYBBAGDvzABEAQgDB5odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2UwGAYKKwYBBAGDvzABEQQKDAgyNTcyMDc0MzBtBgorBgEEAYO/MAESBF8MXWh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS8uZ2l0aHViL3dvcmtmbG93cy9idWlsZC55YW1sQHJlZnMvaGVhZHMvbWFpbjA4BgorBgEEAYO/MAETBCoMKDhhNzMwZDk2YzM3NTYwY2NmMWQzZTA5ZjdiYmNjZGM4ODY4MThmMzMwIQYKKwYBBAGDvzABFAQTDBF3b3JrZmxvd19kaXNwYXRjaDBkBgorBgEEAYO/MAEVBFYMVGh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS9hY3Rpb25zL3J1bnMvMjg5MzEyMjQ1MjkvYXR0ZW1wdHMvMTAWBgorBgEEAYO/MAEWBAgMBnB1YmxpYzBGBgorBgEEAYO/MAEYBDgMNnJlcG86aHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHk6cmVmOnJlZnMvaGVhZHMvbWFpbjCBigYKKwYBBAHWeQIEAgR8BHoAeAB2AN09MGrGxxEyYxkeHJlnNwKiSl643jyt/4eKcoAvKe6OAAABn0J7q9gAAAQDAEcwRQIgOTeBTs/x5i94Oxa7sJsDfb/25lYHlOSwjpvnv5uQ15gCIQDscmbvSZERq1g59lwhyFks9o5YoIdq/8ojjEL6hw3zVDAKBggqhkjOPQQDAwNoADBlAjArunTy1D4D42J9Qr9iitHSd2Sw6oYZj1dOqubzfJxwDmP4gA0BC8fI1ZO5Jp0Rop4CMQD/DDIN0kZ/KYZy/e4WbUZaE2Z65l/fupaAHaEwvlRlGxY2+CkKTbVurUUha+7jmC0="},"tlogEntries":[{"logIndex":"2117651662","logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="},"kindVersion":{"kind":"hashedrekord","version":"0.0.1"},"integratedTime":"1783526829","inclusionPromise":{"signedEntryTimestamp":"MEUCIQCNfh4a9moSW858WLL961BvpOjjlwIbi5soIhjDUX8higIgCXLzy1of2EdVypCvHjrj2W0fqf0fyp3Yj/f7UAeYQdI="},"inclusionProof":{"logIndex":"1995747400","rootHash":"qeZofx5OXgeaHylBeOiimOs0CAnf26cunEGtTHFimMU=","treeSize":"1995747586","hashes":["faG/DcVj/Q9PHckZ47CZoAhpNKlO2ZEtQ4sqPaK16H0=","EJyV13jDSGKG4fdYGn0GgCPnwGaZRkQ1SotHrjhw/lw=","MvnNYHAxUaAiXSRMr3QEhHPmq3T5uaufauCC+0V++k0=","fputtu+kaLJs4NxwF4oenwjJuO4ActPosPLVQhlTQuk=","5zFxE/3nCaJ8NGm55zmwOwnkUk7oJQWYvkRJKC6Y6Lw=","p2ZGC5frgiTRerFcnNyxOifUx/OqmSCTVTTYRN7g/fQ=","UTnDALXywCSMmekFNlsdmDgc+u0sfg9zq8runNxI7gI=","YtXVP2XJ/oywTFRzJNNXJQyHbT2MZkyefBI4D6v4Oyg=","z2xsMLyVswo3PSSN7chTLtn3tCP+8P73QJfpIoESEkk=","lG2+kX4Db/ANM/Ffw/QMSF7sqdZ2iDZRMdu0pZ6Ping=","3AcnHFwWkdjgLxYD9CksGlQadO/Lcr35iRlykj4cXfw=","QF8xujOLLPVnFEW0q4V8DtfovTxl4nGxcgVZKgDZ26w=","nxjt1WqBdXminu9ln0ZrTM1lZTtN2Psr9vrxxmXWPss=","v3Rnvwdy/iZuSJqQSjxAKTt0GBmX+4XksDaltKHxXs0=","lwFfNQVdnM+UXReXH9xyhoIKaRe1KrqgBwsxZGklig0=","frI9BMUdqa/KPLUCZ9yfDzZ2Z6tglf7SvThMJqEFBKU=","Bcvbbu+tDL+zr1H2q26c2ATmVu7v/f7JIFweUu7qDK8=","WajL3ZhY6ZX9meV3VTH9TkrbM31OF4o6+7foL0Uf6PI=","cyKMKBvHkQtwb2xR5svh+YppANOVdn7X8t4DuKMxICA=","+/VZ56MsIPxMiyLAodzKXo5TEWdQp36z89qLhpzloAo=","daxmZaajRpZV+JxHiOYZhJBiSKN5ucqjh2WnGbHhirw=","DOCeoSMovIvLExkhIvisow9AuNXgeWs4ECkyR6EcqYU="],"checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n1995747586\nqeZofx5OXgeaHylBeOiimOs0CAnf26cunEGtTHFimMU=\n\n— rekor.sigstore.dev wNI9ajBGAiEAzMcdVPjJ6Igy/Zdm/c0cim+THoDCm5lFz5j/JHm9wwwCIQCV+FPwUg1iujDbTISOlZl9bFxH1cGdYI5k8xUfQOV/jg==\n"}},"canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJjMDg0OGYyYzcxZjRmNDNlMDNhNDRkZjZhNjY5MjVjYThmN2FhMTk5NDkwMWY0ODhiNDMxMTBjY2EyODVkZWM4In19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FVUNJRVhOdnhPMmgyaHUxeEhjY3hqOG9FanpMa0luVEwveWVOOTdCbDQvL2pzNEFpRUF1Vy9BOENmQ3JCNW9CTkpYcTJZMzVvcmgxbjZCVkVvang2bnR3MEk1UkRjPSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaFRla05EUW5SSFowRjNTVUpCWjBsVlZrMTJhVzR2UlZFcmQyUjJiRk5oT1U1TVQydENUWFJKUkZkcmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDU2UVRSTlZGbDNUbnBCTkZkb1kwNU5hbGwzVG5wQk5FMVVXWGhPZWtFMFYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZvSzA5a1ZrMW9XRWt5UldaaWRtaEdhRWhSVW1OV2RuZG1ObmN3V0ZkalpWQkJOR1FLVTFkc2J6bEpNSGxXWW5GeVNIRnJZMGM1ZVVkMVYxQk1ObUZzT0cwMVUwbEVhbEZxZFRsVlJWcG1SamtyWWpjMGQzRlBRMEptUVhkbloxaHpUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlYyYjFkeUNscEpNR2RwVjBkdGFWZDNiV3htY0ZNeGFIY3pPV3BSZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJGM1dVUldVakJTUVZGSUwwSkhSWGRZTkZwa1lVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKb01Wb3laSEJpYldSdFdWZE9iQXBNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU1rb3hZVmQ0YTB4dWJHaGlWM2hCQ21OdFZtMWplVGx2V2xkR2EyTjVPWFJaVjJ4MVRVUnJSME5wYzBkQlVWRkNaemM0ZDBGUlJVVkxNbWd3WkVoQ2VrOXBPSFprUnpseVdsYzBkVmxYVGpBS1lWYzVkV041Tlc1aFdGSnZaRmRLTVdNeVZubFpNamwxWkVkV2RXUkROV3BpTWpCM1NIZFpTMHQzV1VKQ1FVZEVkbnBCUWtGblVWSmtNamw1WVRKYWN3cGlNMlJtV2tkc2VtTkhSakJaTW1kM1RtZFpTMHQzV1VKQ1FVZEVkbnBCUWtGM1VXOVBSMFV6VFhwQ2EwOVVXbXBOZW1NeFRtcENhbGt5V1hoYVJFNXNDazFFYkcxT01rcHBXVEpPYTFsNlp6Uk9hbWQ0VDBkWmVrMTZRVlJDWjI5eVFtZEZSVUZaVHk5TlFVVkZRa0ZXUTJSWGJITmFSRUZ5UW1kdmNrSm5SVVVLUVZsUEwwMUJSVVpDUWpGdlpGZGtibUZYTlc1YWJVWnFXbE01Y2xwWVNuVmFWM2g2VEZkT2RtSlhNVEZpYld3d1pWUkJaRUpuYjNKQ1owVkZRVmxQTHdwTlFVVkhRa0U1ZVZwWFducE1NbWhzV1ZkU2Vrd3lNV2hoVnpSM1QzZFpTMHQzV1VKQ1FVZEVkbnBCUWtOQlVYUkVRM1J2WkVoU2QyTjZiM1pNTTFKMkNtRXlWblZNYlVacVpFZHNkbUp1VFhWYU1td3dZVWhXYVdSWVRteGpiVTUyWW01U2JHSnVVWFZaTWpsMFRVY3dSME5wYzBkQlVWRkNaemM0ZDBGUmEwVUtXSGQ0WkdGSVVqQmpTRTAyVEhrNWJtRllVbTlrVjBsMVdUSTVkRXd5YURGYU1tUndZbTFrYlZsWFRteE1NblJzWTIwMWJHSklUWFJaTWpsMFlsaFdkUXBoV0ZJMVRIazFibUZZVW05a1YwbDJaREk1ZVdFeVduTmlNMlI2VERKS01XRlhlR3RNYm14b1lsZDRRV050Vm0xamVUbHZXbGRHYTJONU9YUlpWMngxQ2sxRVowZERhWE5IUVZGUlFtYzNPSGRCVVc5RlMyZDNiMDlIUlROTmVrSnJUMVJhYWsxNll6Rk9ha0pxV1RKWmVGcEVUbXhOUkd4dFRqSkthVmt5VG1zS1dYcG5ORTVxWjNoUFIxbDZUWHBCWWtKbmIzSkNaMFZGUVZsUEwwMUJSVXhDUVRCTlF6Tk9iR0pIV1hSaFJ6bDZaRWRXYTAxRlFVZERhWE5IUVZGUlFncG5OemgzUVZGM1JVMW5kM2RoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlUxRVowZERhWE5IUVZGUlFtYzNPSGRCVVRCRlMyZDNiMDlIUlROTmVrSnJUMVJhYWsxNll6Rk9ha0pxV1RKWmVGcEVUbXdLVFVSc2JVNHlTbWxaTWs1cldYcG5ORTVxWjNoUFIxbDZUWHBCWmtKbmIzSkNaMFZGUVZsUEwwMUJSVTlDUWtWTlJETktiRnB1VFhaaFIxWm9Xa2hOZGdwaVYwWndZbXBCWVVKbmIzSkNaMFZGUVZsUEwwMUJSVkJDUVhkTlEycEZkMDU2UlRCT2VsVXhUV3ByZDB4bldVdExkMWxDUWtGSFJIWjZRVUpGUVZGbkNrUkNOVzlrU0ZKM1kzcHZka3d5WkhCa1IyZ3hXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWM1IwRlpTMHQzV1VKQ1FVZEVkbnBCUWtWUlVVc0tSRUZuZVU1VVkzbE5SR013VFhwQ2RFSm5iM0pDWjBWRlFWbFBMMDFCUlZOQ1JqaE5XRmRvTUdSSVFucFBhVGgyV2pKc01HRklWbWxNYlU1MllsTTVid3BrVjJSdVlWYzFibHB0Um1wYVV6bHlXbGhLZFZwWGVIcE1WMDUyWWxjeE1XSnRiREJsVXpoMVdqSnNNR0ZJVm1sTU0yUjJZMjEwYldKSE9UTmplVGxwQ21SWGJITmFRelUxV1ZjeGMxRklTbXhhYmsxMllVZFdhRnBJVFhaaVYwWndZbXBCTkVKbmIzSkNaMFZGUVZsUEwwMUJSVlJDUTI5TlMwUm9hRTU2VFhjS1drUnJNbGw2VFROT1ZGbDNXVEpPYlUxWFVYcGFWRUUxV21wa2FWbHRUbXBhUjAwMFQwUlpORTFVYUcxTmVrMTNTVkZaUzB0M1dVSkNRVWRFZG5wQlFncEdRVkZVUkVKR00ySXpTbkphYlhoMlpERTVhMkZZVG5kWldGSnFZVVJDYTBKbmIzSkNaMFZGUVZsUEwwMUJSVlpDUmxsTlZrZG9NR1JJUW5wUGFUaDJDbG95YkRCaFNGWnBURzFPZG1KVE9XOWtWMlJ1WVZjMWJscHRSbXBhVXpseVdsaEtkVnBYZUhwTVYwNTJZbGN4TVdKdGJEQmxVemxvV1ROU2NHSXlOWG9LVEROS01XSnVUWFpOYW1jMVRYcEZlVTFxVVRGTmFtdDJXVmhTTUZwWE1YZGtTRTEyVFZSQlYwSm5iM0pDWjBWRlFWbFBMMDFCUlZkQ1FXZE5RbTVDTVFwWmJYaHdXWHBDUjBKbmIzSkNaMFZGUVZsUEwwMUJSVmxDUkdkTlRtNUtiR05IT0RaaFNGWnVXakpzZFZveVdtaFpNbFYyWVRKV2VXSnRWbk5qZVRGcUNtSXlNWFJrVnpWd1pFaHJObU50Vm0xUGJrcHNXbTVOZG1GSFZtaGFTRTEyWWxkR2NHSnFRMEpwWjFsTFMzZFpRa0pCU0ZkbFVVbEZRV2RTT0VKSWIwRUtaVUZDTWtGT01EbE5SM0pIZUhoRmVWbDRhMlZJU214dVRuZExhVk5zTmpRemFubDBMelJsUzJOdlFYWkxaVFpQUVVGQlFtNHdTamR4T1dkQlFVRlJSQXBCUldOM1VsRkpaMDlVWlVKVWN5OTROV2s1TkU5NFlUZHpTbk5FWm1Jdk1qVnNXVWhzVDFOM2FuQjJiblkxZFZFeE5XZERTVkZFYzJOdFluWlRXa1ZTQ25FeFp6VTViSGRvZVVacmN6bHZOVmx2U1dSeEx6aHZhbXBGVERab2R6TjZWa1JCUzBKblozRm9hMnBQVUZGUlJFRjNUbTlCUkVKc1FXcEJjblZ1VkhrS01VUTBSRFF5U2psUmNqbHBhWFJJVTJReVUzYzJiMWxhYWpGa1QzRjFZbnBtU25oM1JHMVFOR2RCTUVKRE9HWkpNVnBQTlVwd01GSnZjRFJEVFZGRUx3cEVSRWxPTUd0YUwwdFpXbmt2WlRSWFlsVmFZVVV5V2pZMWJDOW1kWEJoUVVoaFJYZDJiRkpzUjNoWk1pdERhMHRVWWxaMWNsVlZhR0VyTjJwdFF6QTlDaTB0TFMwdFJVNUVJRU5GVWxSSlJrbERRVlJGTFMwdExTMEsifX19fQ=="}],"timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyTADAgEAMIICwAYJKoZIhvcNAQcCoIICsTCCAq0CAQMxDTALBglghkgBZQMEAgEwgbcGCyqGSIb3DQEJEAEEoIGnBIGkMIGhAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgVvqCCr9hg6NMCNxbGNtRdMOTx0af7FDT8lkPVuq5lvECFCucXQrHPEc7YPpZsH0ZGXWBxgOyGA8yMDI2MDcwODE2MDcwOVowAwIBAaAypDAwLjEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MRUwEwYDVQQDEwxzaWdzdG9yZS10c2GgADGCAdswggHXAgEBMFEwOTEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MSAwHgYDVQQDExdzaWdzdG9yZS10c2Etc2VsZnNpZ25lZAIUOhNULwyQYe68wUMvy4qOiyojiwwwCwYJYIZIAWUDBAIBoIH8MBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAcBgkqhkiG9w0BCQUxDxcNMjYwNzA4MTYwNzA5WjAvBgkqhkiG9w0BCQQxIgQgz6OXbWgsHYQGMTLrX5m2O9tiEWz+FmGaH6rJ6e1Gj1MwgY4GCyqGSIb3DQEJEAIvMX8wfTB7MHkEIIX5J7wHq2LKw7RDVsEO/IGyxog/2nq55thw2dE6zQW3MFUwPaQ7MDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAoGCCqGSM49BAMCBGcwZQIwJDjMnDvt3xOCTw8BAEv2q3L7RnbXs8tBV5Qv2+g2pja7fWmLQ+zcfc/XJZ24XYXrAjEA2w8K+5KRBVFDRe5vl3vYLIIamAi8JFI9dIGdayGE2axjFJLT/MEq4L3dppovHYri"}]}},"messageSignature":{"messageDigest":{"algorithm":"SHA2_256","digest":"wISPLHH09D4DpE32pmklyo96oZlJAfSItDEQzKKF3sg="},"signature":"MEUCIEXNvxO2h2hu1xHccxj8oEjzLkInTL/yeN97Bl4//js4AiEAuW/A8CfCrB5oBNJXq2Y35orh1n6BVEojx6ntw0I5RDc="}}
 
1
+ {"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json", "verificationMaterial":{"certificate":{"rawBytes":"MIIHTDCCBtGgAwIBAgIUMH1tM3MOxZ2DbxCFzwl578pP26owCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwODI3MDczNDQyWhcNMjYwODI3MDc0NDQyWjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEH8JcqtRIgGd1+CtY3qo11zNnSgjyLWFPxC2RPmIUxlCTXIigRHGDMEJ5I9aRlkESJGlapy/U3/1ItDL81dtt1qOCBfAwggXsMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUS1xtg/gywYrdFydJKAQRd2AQcyAwHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wawYDVR0RAQH/BGEwX4ZdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDkGCisGAQQBg78wAQEEK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wHwYKKwYBBAGDvzABAgQRd29ya2Zsb3dfZGlzcGF0Y2gwNgYKKwYBBAGDvzABAwQoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTATBgorBgEEAYO/MAEEBAVCdWlsZDArBgorBgEEAYO/MAEFBB1odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTAdBgorBgEEAYO/MAEGBA9yZWZzL2hlYWRzL21haW4wOwYKKwYBBAGDvzABCAQtDCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMG0GCisGAQQBg78wAQkEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wAQoEKgwoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTAbBgorBgEEAYO/MAELBA0MC3NlbGYtaG9zdGVkMEAGCisGAQQBg78wAQwEMgwwaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MDgGCisGAQQBg78wAQ0EKgwoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTAfBgorBgEEAYO/MAEOBBEMD3JlZnMvaGVhZHMvbWFpbjAaBgorBgEEAYO/MAEPBAwMCjEwNzE0NzU1MjkwLgYKKwYBBAGDvzABEAQgDB5odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2UwGAYKKwYBBAGDvzABEQQKDAgyNTcyMDc0MzBtBgorBgEEAYO/MAESBF8MXWh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS8uZ2l0aHViL3dvcmtmbG93cy9idWlsZC55YW1sQHJlZnMvaGVhZHMvbWFpbjA4BgorBgEEAYO/MAETBCoMKGFkZGY0NzQxZmFmYjU1YjRjMTAxYjE1OTg1ZGZhZWVhN2M3YzJmM2EwIQYKKwYBBAGDvzABFAQTDBF3b3JrZmxvd19kaXNwYXRjaDBkBgorBgEEAYO/MAEVBFYMVGh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS9hY3Rpb25zL3J1bnMvMzMwNDU0MTE3MDQvYXR0ZW1wdHMvMTAWBgorBgEEAYO/MAEWBAgMBnB1YmxpYzBGBgorBgEEAYO/MAEYBDgMNnJlcG86aHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHk6cmVmOnJlZnMvaGVhZHMvbWFpbjCBigYKKwYBBAHWeQIEAgR8BHoAeAB2AN09MGrGxxEyYxkeHJlnNwKiSl643jyt/4eKcoAvKe6OAAABoEIkfd0AAAQDAEcwRQIga/tdIJYY4IWi9thMGIqQeKGFHR/RaogpZZeC9JQOtd0CIQDLG9USiDKpOtS9R3w4OFHyNcWfAefKc9ugJDCodnIDCjAKBggqhkjOPQQDAwNpADBmAjEAlVit+v1RroGfLdx3XJxSCjPnc7qojn2xSY76AyFt3UdV4Wk/rgU5c9xapR2rYZlGAjEAqj+hkMGZBjkl3lZ4eENRMSelgmnOcNEOGvOJNGmXPOKMS36jaKlCyqgSW3gk2ehG"}, "tlogEntries":[{"logIndex":"2614421264", "logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="}, "kindVersion":{"kind":"hashedrekord", "version":"0.0.1"}, "integratedTime":"1787816083", "inclusionPromise":{"signedEntryTimestamp":"MEUCIDrDteHQzRp5dacIB84bHhVHL3EVCzWR5z3C+Cg/Gv9YAiEA11TTITReoItQ/GizEGlg0BLegCV/EC2obW0qUYAtsCY="}, "inclusionProof":{"logIndex":"2492517002", "rootHash":"xoQ7swbsaAQCXREgy/rm1Ub0re5RlUwcLz4Y3ErMKLA=", "treeSize":"2492517107", "hashes":["QbG+CB42OaCzIhK9hopHhUAG5NU8vuoOkiXrWCDarYE=", "PnhSyL9jKKUoKAvAnKWPitBBet2QJ82/BIPJdWshsxw=", "LWDi19ENpI83dXoVSgqrAJAKZZ72CZHCpaNsvhzuCQA=", "V1m+aLQNet9NByAC8JHhmsRT19ZAfbhmR1tlZGLpuTs=", "LxAKB8MG8MuzcSEjGP7HErc2yZOCNGCmeKT7fYgaKR0=", "mZNcANUb/mBMWF+602G4jDjhVV0bwGzz0w0LKNu7c6w=", "BUYNXJpO3YuK0/wOkWeqWKStjWWiDi0+IgT1IKJtTZE=", "4zCHVxX2WvFxdGy8zx78TF6zu9FpQxpW2xOqsHGb0SE=", "6ARoyarnUsPRyGqgUnYqUdusS4ZgouCNQ/2baVa3qsY=", "9Z0akIavSZQfGwx+qt9uXOimpUzrQUDuBG4WqxrUICw=", "5IX0hbRxcv4MfzwgxDV3FdWPmsCJk++fDlfjia6J5FM=", "JudKhBfUc6ZLff0dbtidJ1/UlyM2L1U1kpxAvQtZyg0=", "NSuKPSrhPDg3xoCPz74qzkB8LWy1aV46KTWus0HJYzQ=", "7TfDCaMWgEwSJEZd/e33b24919rF4IDJLmbqNNRNhZs=", "0HfdxDt/zGugZLIuHasrdLEW9s8OaTykSSqBEDFQXdw=", "SndbMKVtcTenAkwi2JBfGzD+mhexp1qJbRIY+A1JRIU=", "xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="], "checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n2492517107\nxoQ7swbsaAQCXREgy/rm1Ub0re5RlUwcLz4Y3ErMKLA=\n\n— rekor.sigstore.dev wNI9ajBFAiAXbn5SQv1Wg+sEHsmDIsCBPs6cN8oqdv6wgfJPobSjVAIhANmYYYhhRecF80ItbJhqqKVixcUO7Vgb7qVJYfNUHdzv\n"}}, "canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJiODI2ZDQ4YWY0YWIzYzc3MzA1NWQ1MTljMjUwNzgwYTBlNzY4NWRkYzViYzM1ZWQ5NzlmNzI2NjdkYzNhMTQ5In19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FUUNJRWJqQ296bkttdU83c09TcFBVL09KckFVZnBvTW9aSnFVeGNZcmJBbUVWaEFpQk50RkIrT3BMdEM3czEzaDdhMkZ5Z0hpRGVNYlRnaEdBRzNaZnF0SExSdkE9PSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaFVSRU5EUW5SSFowRjNTVUpCWjBsVlRVZ3hkRTB6VFU5NFdqSkVZbmhEUm5wM2JEVTNPSEJRTWpadmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDlFU1ROTlJHTjZUa1JSZVZkb1kwNU5hbGwzVDBSSk0wMUVZekJPUkZGNVYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZJT0VwamNYUlNTV2RIWkRFclEzUlpNM0Z2TVRGNlRtNVRaMnA1VEZkR1VIaERNbElLVUcxSlZYaHNRMVJZU1dsblVraEhSRTFGU2pWSk9XRlNiR3RGVTBwSGJHRndlUzlWTXk4eFNYUkVURGd4WkhSME1YRlBRMEptUVhkbloxaHpUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlZUTVhoMENtY3ZaM2wzV1hKa1JubGtTa3RCVVZKa01rRlJZM2xCZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJGM1dVUldVakJTUVZGSUwwSkhSWGRZTkZwa1lVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKb01Wb3laSEJpYldSdFdWZE9iQXBNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU1rb3hZVmQ0YTB4dWJHaGlWM2hCQ21OdFZtMWplVGx2V2xkR2EyTjVPWFJaVjJ4MVRVUnJSME5wYzBkQlVWRkNaemM0ZDBGUlJVVkxNbWd3WkVoQ2VrOXBPSFprUnpseVdsYzBkVmxYVGpBS1lWYzVkV041Tlc1aFdGSnZaRmRLTVdNeVZubFpNamwxWkVkV2RXUkROV3BpTWpCM1NIZFpTMHQzV1VKQ1FVZEVkbnBCUWtGblVWSmtNamw1WVRKYWN3cGlNMlJtV2tkc2VtTkhSakJaTW1kM1RtZFpTMHQzV1VKQ1FVZEVkbnBCUWtGM1VXOVpWMUpyV21wUk0wNUVSbTFaVjFwcFRsUldhVTVIVFhoTlJFWnBDazFVVlRWUFJGWnJXbTFHYkZwWFJUTlplbVJxVFcxWmVsbFVRVlJDWjI5eVFtZEZSVUZaVHk5TlFVVkZRa0ZXUTJSWGJITmFSRUZ5UW1kdmNrSm5SVVVLUVZsUEwwMUJSVVpDUWpGdlpGZGtibUZYTlc1YWJVWnFXbE01Y2xwWVNuVmFWM2g2VEZkT2RtSlhNVEZpYld3d1pWUkJaRUpuYjNKQ1owVkZRVmxQTHdwTlFVVkhRa0U1ZVZwWFducE1NbWhzV1ZkU2Vrd3lNV2hoVnpSM1QzZFpTMHQzV1VKQ1FVZEVkbnBCUWtOQlVYUkVRM1J2WkVoU2QyTjZiM1pNTTFKMkNtRXlWblZNYlVacVpFZHNkbUp1VFhWYU1td3dZVWhXYVdSWVRteGpiVTUyWW01U2JHSnVVWFZaTWpsMFRVY3dSME5wYzBkQlVWRkNaemM0ZDBGUmEwVUtXSGQ0WkdGSVVqQmpTRTAyVEhrNWJtRllVbTlrVjBsMVdUSTVkRXd5YURGYU1tUndZbTFrYlZsWFRteE1NblJzWTIwMWJHSklUWFJaTWpsMFlsaFdkUXBoV0ZJMVRIazFibUZZVW05a1YwbDJaREk1ZVdFeVduTmlNMlI2VERKS01XRlhlR3RNYm14b1lsZDRRV050Vm0xamVUbHZXbGRHYTJONU9YUlpWMngxQ2sxRVowZERhWE5IUVZGUlFtYzNPSGRCVVc5RlMyZDNiMWxYVW10YWFsRXpUa1JHYlZsWFdtbE9WRlpwVGtkTmVFMUVSbWxOVkZVMVQwUldhMXB0Um13S1dsZEZNMWw2WkdwTmJWbDZXVlJCWWtKbmIzSkNaMFZGUVZsUEwwMUJSVXhDUVRCTlF6Tk9iR0pIV1hSaFJ6bDZaRWRXYTAxRlFVZERhWE5IUVZGUlFncG5OemgzUVZGM1JVMW5kM2RoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlUxRVowZERhWE5IUVZGUlFtYzNPSGRCVVRCRlMyZDNiMWxYVW10YWFsRXpUa1JHYlZsWFdtbE9WRlpwVGtkTmVFMUVSbWtLVFZSVk5VOUVWbXRhYlVac1dsZEZNMWw2WkdwTmJWbDZXVlJCWmtKbmIzSkNaMFZGUVZsUEwwMUJSVTlDUWtWTlJETktiRnB1VFhaaFIxWm9Xa2hOZGdwaVYwWndZbXBCWVVKbmIzSkNaMFZGUVZsUEwwMUJSVkJDUVhkTlEycEZkMDU2UlRCT2VsVXhUV3ByZDB4bldVdExkMWxDUWtGSFJIWjZRVUpGUVZGbkNrUkNOVzlrU0ZKM1kzcHZka3d5WkhCa1IyZ3hXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWM1IwRlpTMHQzV1VKQ1FVZEVkbnBCUWtWUlVVc0tSRUZuZVU1VVkzbE5SR013VFhwQ2RFSm5iM0pDWjBWRlFWbFBMMDFCUlZOQ1JqaE5XRmRvTUdSSVFucFBhVGgyV2pKc01HRklWbWxNYlU1MllsTTVid3BrVjJSdVlWYzFibHB0Um1wYVV6bHlXbGhLZFZwWGVIcE1WMDUyWWxjeE1XSnRiREJsVXpoMVdqSnNNR0ZJVm1sTU0yUjJZMjEwYldKSE9UTmplVGxwQ21SWGJITmFRelUxV1ZjeGMxRklTbXhhYmsxMllVZFdhRnBJVFhaaVYwWndZbXBCTkVKbmIzSkNaMFZGUVZsUEwwMUJSVlJDUTI5TlMwZEdhMXBIV1RBS1RucFJlRnB0Um0xWmFsVXhXV3BTYWsxVVFYaFpha1V4VDFSbk1WcEhXbWhhVjFab1RqSk5NMWw2U20xTk1rVjNTVkZaUzB0M1dVSkNRVWRFZG5wQlFncEdRVkZVUkVKR00ySXpTbkphYlhoMlpERTVhMkZZVG5kWldGSnFZVVJDYTBKbmIzSkNaMFZGUVZsUEwwMUJSVlpDUmxsTlZrZG9NR1JJUW5wUGFUaDJDbG95YkRCaFNGWnBURzFPZG1KVE9XOWtWMlJ1WVZjMWJscHRSbXBhVXpseVdsaEtkVnBYZUhwTVYwNTJZbGN4TVdKdGJEQmxVemxvV1ROU2NHSXlOWG9LVEROS01XSnVUWFpOZWsxM1RrUlZNRTFVUlROTlJGRjJXVmhTTUZwWE1YZGtTRTEyVFZSQlYwSm5iM0pDWjBWRlFWbFBMMDFCUlZkQ1FXZE5RbTVDTVFwWmJYaHdXWHBDUjBKbmIzSkNaMFZGUVZsUEwwMUJSVmxDUkdkTlRtNUtiR05IT0RaaFNGWnVXakpzZFZveVdtaFpNbFYyWVRKV2VXSnRWbk5qZVRGcUNtSXlNWFJrVnpWd1pFaHJObU50Vm0xUGJrcHNXbTVOZG1GSFZtaGFTRTEyWWxkR2NHSnFRMEpwWjFsTFMzZFpRa0pCU0ZkbFVVbEZRV2RTT0VKSWIwRUtaVUZDTWtGT01EbE5SM0pIZUhoRmVWbDRhMlZJU214dVRuZExhVk5zTmpRemFubDBMelJsUzJOdlFYWkxaVFpQUVVGQlFtOUZTV3RtWkRCQlFVRlJSQXBCUldOM1VsRkpaMkV2ZEdSSlNsbFpORWxYYVRsMGFFMUhTWEZSWlV0SFJraFNMMUpoYjJkd1dscGxRemxLVVU5MFpEQkRTVkZFVEVjNVZWTnBSRXR3Q2s5MFV6bFNNM2MwVDBaSWVVNWpWMlpCWldaTFl6bDFaMHBFUTI5a2JrbEVRMnBCUzBKblozRm9hMnBQVUZGUlJFRjNUbkJCUkVKdFFXcEZRV3hXYVhRS0szWXhVbkp2UjJaTVpIZ3pXRXA0VTBOcVVHNWpOM0Z2YW00eWVGTlpOelpCZVVaME0xVmtWalJYYXk5eVoxVTFZemw0WVhCU01uSlpXbXhIUVdwRlFRcHhhaXRvYTAxSFdrSnFhMnd6YkZvMFpVVk9VazFUWld4bmJXNVBZMDVGVDBkMlQwcE9SMjFZVUU5TFRWTXpObXBoUzJ4RGVYRm5VMWN6WjJzeVpXaEhDaTB0TFMwdFJVNUVJRU5GVWxSSlJrbERRVlJGTFMwdExTMEsifX19fQ=="}], "timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyTADAgEAMIICwAYJKoZIhvcNAQcCoIICsTCCAq0CAQMxDTALBglghkgBZQMEAgEwgbgGCyqGSIb3DQEJEAEEoIGoBIGlMIGiAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgoyLVQw0L/LL2q9yuwUNe0zPvl2NnzUWseZZbf+ezUGcCFQCktIzC2D+gE0j0i9YqrgOzolFKcxgPMjAyNjA4MjcwNzM0NDNaMAMCAQGgMqQwMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhoAAxggHaMIIB1gIBATBRMDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAsGCWCGSAFlAwQCAaCB/DAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTI2MDgyNzA3MzQ0M1owLwYJKoZIhvcNAQkEMSIEIFl0fg8gNSFdVW0wuFJ6FNLIRTpv9b9cpyqa2pY+82N4MIGOBgsqhkiG9w0BCRACLzF/MH0wezB5BCCF+Se8B6tiysO0Q1bBDvyBssaIP9p6uebYcNnROs0FtzBVMD2kOzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAgRmMGQCMARN9F9n0ToTCZvrM3atQZyta4/MqsO4oamO6M/p13rUhw+UgdX2GkMMZKD99OEadAIwdP3WoIP5IJy/fB0J0GMxsOUyxTaBsLnCgjmgLHTuxzO7gG/Oy7e4vy9VP8yiffQc"}]}}, "messageSignature":{"messageDigest":{"algorithm":"SHA2_256", "digest":"uCbUivSrPHcwVdUZwlB4Cg52hd3FvDXtl59yZn3DoUk="}, "signature":"MEQCIEbjCoznKmuO7sOSpPU/OJrAUfpoMoZJqUxcYrbAmEVhAiBNtFB+OpLtC7s13h7a2FygHiDeMbTghGAG3ZfqtHLRvA=="}}
build/torch212-cxx11-rocm72-x86_64-linux/paged_attention/__init__.py DELETED
@@ -1,26 +0,0 @@
1
- import ctypes
2
- import importlib.util
3
- import sys
4
- from pathlib import Path
5
- from types import ModuleType
6
-
7
-
8
- def _import_from_path(file_path: Path) -> ModuleType:
9
- # We cannot use the module name as-is, after adding it to `sys.modules`,
10
- # it would also be used for other imports. So, we make a module name that
11
- # depends on the path for it to be unique using the hex-encoded hash of
12
- # the path.
13
- path_hash = "{:x}".format(ctypes.c_size_t(hash(file_path.absolute())).value)
14
- module_name = path_hash
15
- spec = importlib.util.spec_from_file_location(module_name, file_path)
16
- if spec is None:
17
- raise ImportError(f"Cannot load spec for {module_name} from {file_path}")
18
- module = importlib.util.module_from_spec(spec)
19
- if module is None:
20
- raise ImportError(f"Cannot load module {module_name} from spec")
21
- sys.modules[module_name] = module
22
- spec.loader.exec_module(module) # type: ignore
23
- return module
24
-
25
-
26
- globals().update(vars(_import_from_path(Path(__file__).parent.parent / "__init__.py")))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
build/torch213-cxx11-rocm71-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _paged_attention_rocm_8a730d9
3
- ops = torch.ops._paged_attention_rocm_8a730d9
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_paged_attention_rocm_8a730d9::{op_name}"
 
1
  import torch
2
+ from . import _paged_attention_rocm_addf474
3
+ ops = torch.ops._paged_attention_rocm_addf474
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_paged_attention_rocm_addf474::{op_name}"
build/torch213-cxx11-rocm71-x86_64-linux/{_paged_attention_rocm_8a730d9.abi3.so → _paged_attention_rocm_addf474.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:035fc19f71ce7a30dcd0ccbb7be4d957e77692ad73c3b74edf71d62a55932a37
3
  size 57126368
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:8459e208d1782cc96daed88d93df98c3e71d625dab5205b9ed0796e7e7fce9bd
3
  size 57126368
build/torch213-cxx11-rocm71-x86_64-linux/metadata.json CHANGED
@@ -1,9 +1,10 @@
1
  {
2
  "name": "paged-attention",
3
- "id": "_paged_attention_rocm_8a730d9",
4
  "version": 1,
5
  "license": "Apache-2.0",
6
  "python-depends": [],
 
7
  "backend": {
8
  "type": "rocm",
9
  "archs": [
@@ -21,20 +22,19 @@
21
  "files": {
22
  "__init__.py": "oes6jQj02wGGtnJVomIE7ZJr2qnJmOm6CWurue5Vf6w=",
23
  "_custom_ops.py": "tnC6OR7TPhMV+tt8MyUyIH2gDIdxBzHT+1z1NUhA9EE=",
24
- "_ops.py": "0XxQOKt9j5JhJ652GcGMNY9DZL9aZ09tHhselfFjCgI=",
25
- "_paged_attention_rocm_8a730d9.abi3.so": "A1/Bn3HOejDc0My7e+TZV+d2kq1zw7dO33HWKlWTKjc=",
26
- "paged_attention/__init__.py": "DFYPlrhXwYjEqCl/8n0SmWGZV8NFml5DPhMjKfv98GY=",
27
  "platforms.py": "NeAhENqA8yXHgy3EfkYP1Bkx1n6aStkExV9py7Jvdiw="
28
  }
29
  },
30
  "provenance": {
31
  "kernel-builder": {
32
  "version": "0.17.0-dev0",
33
- "sha": "81580bb92577f2f7228661ca2a221fc052375709",
34
  "dirty": false
35
  },
36
  "kernel": {
37
- "sha": "8a730d96c37560ccf1d3e09f7bbccdc886818f33",
38
  "dirty": false
39
  }
40
  }
 
1
  {
2
  "name": "paged-attention",
3
+ "id": "_paged_attention_rocm_addf474",
4
  "version": 1,
5
  "license": "Apache-2.0",
6
  "python-depends": [],
7
+ "kernel-depends": [],
8
  "backend": {
9
  "type": "rocm",
10
  "archs": [
 
22
  "files": {
23
  "__init__.py": "oes6jQj02wGGtnJVomIE7ZJr2qnJmOm6CWurue5Vf6w=",
24
  "_custom_ops.py": "tnC6OR7TPhMV+tt8MyUyIH2gDIdxBzHT+1z1NUhA9EE=",
25
+ "_ops.py": "xXa2NPhR4Ged5ClRhCjr1VLevF56KY0pVM4TumQRwJM=",
26
+ "_paged_attention_rocm_addf474.abi3.so": "hFniCNF4LMltrtiNk9+Yw+cdYl2rUgW57QeW5+f86b0=",
 
27
  "platforms.py": "NeAhENqA8yXHgy3EfkYP1Bkx1n6aStkExV9py7Jvdiw="
28
  }
29
  },
30
  "provenance": {
31
  "kernel-builder": {
32
  "version": "0.17.0-dev0",
33
+ "commit": "081dcd473f8eca27226eef1f9c47c45b86c756b5",
34
  "dirty": false
35
  },
36
  "kernel": {
37
+ "commit": "addf4741fafb55b4c101b15985dfaeea7c7c2f3a",
38
  "dirty": false
39
  }
40
  }
build/torch213-cxx11-rocm71-x86_64-linux/metadata.json.sigstore CHANGED
@@ -1 +1 @@
1
- {"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"certificate":{"rawBytes":"MIIHTDCCBtKgAwIBAgIUc4cZTzNbCmljnts/p3da+v+tPq8wCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwNzA4MTYwNzExWhcNMjYwNzA4MTYxNzExWjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE8XG93ZlihoV5mtYbi349q9+wST+4C7vXhg+go6/yW5+qnyxqHUf8bxzcvMdwHQvEvNeipCvh9A+NA9UBAFTcwqOCBfEwggXtMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUvBpw2Igzx74LuhWDNPsl93PCMH4wHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wawYDVR0RAQH/BGEwX4ZdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDkGCisGAQQBg78wAQEEK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wHwYKKwYBBAGDvzABAgQRd29ya2Zsb3dfZGlzcGF0Y2gwNgYKKwYBBAGDvzABAwQoOGE3MzBkOTZjMzc1NjBjY2YxZDNlMDlmN2JiY2NkYzg4NjgxOGYzMzATBgorBgEEAYO/MAEEBAVCdWlsZDArBgorBgEEAYO/MAEFBB1odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTAdBgorBgEEAYO/MAEGBA9yZWZzL2hlYWRzL21haW4wOwYKKwYBBAGDvzABCAQtDCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMG0GCisGAQQBg78wAQkEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wAQoEKgwoOGE3MzBkOTZjMzc1NjBjY2YxZDNlMDlmN2JiY2NkYzg4NjgxOGYzMzAbBgorBgEEAYO/MAELBA0MC3NlbGYtaG9zdGVkMEAGCisGAQQBg78wAQwEMgwwaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MDgGCisGAQQBg78wAQ0EKgwoOGE3MzBkOTZjMzc1NjBjY2YxZDNlMDlmN2JiY2NkYzg4NjgxOGYzMzAfBgorBgEEAYO/MAEOBBEMD3JlZnMvaGVhZHMvbWFpbjAaBgorBgEEAYO/MAEPBAwMCjEwNzE0NzU1MjkwLgYKKwYBBAGDvzABEAQgDB5odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2UwGAYKKwYBBAGDvzABEQQKDAgyNTcyMDc0MzBtBgorBgEEAYO/MAESBF8MXWh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS8uZ2l0aHViL3dvcmtmbG93cy9idWlsZC55YW1sQHJlZnMvaGVhZHMvbWFpbjA4BgorBgEEAYO/MAETBCoMKDhhNzMwZDk2YzM3NTYwY2NmMWQzZTA5ZjdiYmNjZGM4ODY4MThmMzMwIQYKKwYBBAGDvzABFAQTDBF3b3JrZmxvd19kaXNwYXRjaDBkBgorBgEEAYO/MAEVBFYMVGh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS9hY3Rpb25zL3J1bnMvMjg5MzEyMjQ1MjkvYXR0ZW1wdHMvMTAWBgorBgEEAYO/MAEWBAgMBnB1YmxpYzBGBgorBgEEAYO/MAEYBDgMNnJlcG86aHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHk6cmVmOnJlZnMvaGVhZHMvbWFpbjCBiwYKKwYBBAHWeQIEAgR9BHsAeQB3AN09MGrGxxEyYxkeHJlnNwKiSl643jyt/4eKcoAvKe6OAAABn0J7tMUAAAQDAEgwRgIhAJRcmt7LLVy6Ykt2VCeG/1IllxzuoqttMvuU36+XUxyHAiEA7tFHX3S1LS3CoR2BP+iZHo2B5tCs3SiJybGtOWsKJwIwCgYIKoZIzj0EAwMDaAAwZQIxAPysPhy5s+alN8vcjbmnyePSoFsqB0S+mGMGI1jb3HysaDtI4aUiGo3hLT+Vb/FX4AIwa6Jlu8ByZTR8bq6LcrdQhQk12RQwPIP0VSRTcSPCZPN27BOHBvlpUZXdYHtbS6RG"},"tlogEntries":[{"logIndex":"2117652379","logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="},"kindVersion":{"kind":"hashedrekord","version":"0.0.1"},"integratedTime":"1783526832","inclusionPromise":{"signedEntryTimestamp":"MEQCIELRjuzvBkguXy649iLpCBlFCmZMZTbZN5vx+M9DVb9fAiBsMtog8kNFX5Lvb7NntSP0AQpH1KSjFe3d1jNk6sNEUA=="},"inclusionProof":{"logIndex":"1995748117","rootHash":"H/MoFozOR1D3eAvtCuppLmQoHMNgDAmWbp1qY/EikQ0=","treeSize":"1995748277","hashes":["kB0x3ewgTkptdv4rEwNTNtcYygO1FTOzpXWra2RYnjM=","T1rzTKg/FlIklN6aSgcmXjVMISIb2QPx7FY+FpZdHoA=","xR/GNApZCkEHavpMiVCzWqIHRmlLgT4G4yAiv6cPgKk=","+aH5GKiJcSBw8mnivY9uCoGDNGKI9abMq8pjSDsgOj8=","XvvhD/TiOON0AR5OLYieWRTYbSs0buBpX399FOxjf04=","4obywVp8n27uc4Gpy6LciMyYYuV5JEyyOiZN1R6vNnQ=","wcpi28/LaLVfes4yfi3bqXNNcrvNjp0n/HUjVVPV/2Q=","+YB6QQrvfEW3c/QJ+wlWhch9JJpdEI7qolWDgz/i0Eo=","PUqEJArm5wyvzMi4p+lsOebXvTXh6RkdZeZzPNJs/pI=","e/cplsCye9wuYMKKxVYs13cP4bAE88Z/xbTCYtZwXyg=","lG2+kX4Db/ANM/Ffw/QMSF7sqdZ2iDZRMdu0pZ6Ping=","3AcnHFwWkdjgLxYD9CksGlQadO/Lcr35iRlykj4cXfw=","QF8xujOLLPVnFEW0q4V8DtfovTxl4nGxcgVZKgDZ26w=","nxjt1WqBdXminu9ln0ZrTM1lZTtN2Psr9vrxxmXWPss=","v3Rnvwdy/iZuSJqQSjxAKTt0GBmX+4XksDaltKHxXs0=","lwFfNQVdnM+UXReXH9xyhoIKaRe1KrqgBwsxZGklig0=","frI9BMUdqa/KPLUCZ9yfDzZ2Z6tglf7SvThMJqEFBKU=","Bcvbbu+tDL+zr1H2q26c2ATmVu7v/f7JIFweUu7qDK8=","WajL3ZhY6ZX9meV3VTH9TkrbM31OF4o6+7foL0Uf6PI=","cyKMKBvHkQtwb2xR5svh+YppANOVdn7X8t4DuKMxICA=","+/VZ56MsIPxMiyLAodzKXo5TEWdQp36z89qLhpzloAo=","daxmZaajRpZV+JxHiOYZhJBiSKN5ucqjh2WnGbHhirw=","DOCeoSMovIvLExkhIvisow9AuNXgeWs4ECkyR6EcqYU="],"checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n1995748277\nH/MoFozOR1D3eAvtCuppLmQoHMNgDAmWbp1qY/EikQ0=\n\n— rekor.sigstore.dev wNI9ajBGAiEAh3k5fokWUg/I3hcXCyJW3fzKwMu/B2Yp8EK0Y8w2TqsCIQC313rkoCN4hm4oxmmnBKgvMYrf7uKUVobOCzk5aP3V7g==\n"}},"canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiIyZDhjZDgzZDkyN2QxZWUzNGRkYzQwMTgxZjI0Y2UxYTc1ZWZkYThkYmQyNGQ4Nzg5ZGNjYmYyNTA5MDg3ZjFiIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FVUNJUUNxbVhTckZPZVJldzIwRWJ0SGw3ZFFDWUJoLy9oek9uUTYwOE5tVmRXQ3dRSWdldm0zQXFzTkxzdkVXY3kxZmd5YlE1UEVmTVVTUGJzdkJXWmNPeENkTjhJPSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaFVSRU5EUW5STFowRjNTVUpCWjBsVll6UmpXbFI2VG1KRGJXeHFiblJ6TDNBelpHRXJkaXQwVUhFNGQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDU2UVRSTlZGbDNUbnBGZUZkb1kwNU5hbGwzVG5wQk5FMVVXWGhPZWtWNFYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVU0V0VjNU0xcHNhV2h2VmpWdGRGbGlhVE0wT1hFNUszZFRWQ3MwUXpkMldHaG5LMmNLYnpZdmVWYzFLM0Z1ZVhoeFNGVm1PR0o0ZW1OMlRXUjNTRkYyUlhaT1pXbHdRM1pvT1VFclRrRTVWVUpCUmxSamQzRlBRMEptUlhkbloxaDBUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlYyUW5CM0NqSkpaM3A0TnpSTWRXaFhSRTVRYzJ3NU0xQkRUVWcwZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJGM1dVUldVakJTUVZGSUwwSkhSWGRZTkZwa1lVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKb01Wb3laSEJpYldSdFdWZE9iQXBNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU1rb3hZVmQ0YTB4dWJHaGlWM2hCQ21OdFZtMWplVGx2V2xkR2EyTjVPWFJaVjJ4MVRVUnJSME5wYzBkQlVWRkNaemM0ZDBGUlJVVkxNbWd3WkVoQ2VrOXBPSFprUnpseVdsYzBkVmxYVGpBS1lWYzVkV041Tlc1aFdGSnZaRmRLTVdNeVZubFpNamwxWkVkV2RXUkROV3BpTWpCM1NIZFpTMHQzV1VKQ1FVZEVkbnBCUWtGblVWSmtNamw1WVRKYWN3cGlNMlJtV2tkc2VtTkhSakJaTW1kM1RtZFpTMHQzV1VKQ1FVZEVkbnBCUWtGM1VXOVBSMFV6VFhwQ2EwOVVXbXBOZW1NeFRtcENhbGt5V1hoYVJFNXNDazFFYkcxT01rcHBXVEpPYTFsNlp6Uk9hbWQ0VDBkWmVrMTZRVlJDWjI5eVFtZEZSVUZaVHk5TlFVVkZRa0ZXUTJSWGJITmFSRUZ5UW1kdmNrSm5SVVVLUVZsUEwwMUJSVVpDUWpGdlpGZGtibUZYTlc1YWJVWnFXbE01Y2xwWVNuVmFWM2g2VEZkT2RtSlhNVEZpYld3d1pWUkJaRUpuYjNKQ1owVkZRVmxQTHdwTlFVVkhRa0U1ZVZwWFducE1NbWhzV1ZkU2Vrd3lNV2hoVnpSM1QzZFpTMHQzV1VKQ1FVZEVkbnBCUWtOQlVYUkVRM1J2WkVoU2QyTjZiM1pNTTFKMkNtRXlWblZNYlVacVpFZHNkbUp1VFhWYU1td3dZVWhXYVdSWVRteGpiVTUyWW01U2JHSnVVWFZaTWpsMFRVY3dSME5wYzBkQlVWRkNaemM0ZDBGUmEwVUtXSGQ0WkdGSVVqQmpTRTAyVEhrNWJtRllVbTlrVjBsMVdUSTVkRXd5YURGYU1tUndZbTFrYlZsWFRteE1NblJzWTIwMWJHSklUWFJaTWpsMFlsaFdkUXBoV0ZJMVRIazFibUZZVW05a1YwbDJaREk1ZVdFeVduTmlNMlI2VERKS01XRlhlR3RNYm14b1lsZDRRV050Vm0xamVUbHZXbGRHYTJONU9YUlpWMngxQ2sxRVowZERhWE5IUVZGUlFtYzNPSGRCVVc5RlMyZDNiMDlIUlROTmVrSnJUMVJhYWsxNll6Rk9ha0pxV1RKWmVGcEVUbXhOUkd4dFRqSkthVmt5VG1zS1dYcG5ORTVxWjNoUFIxbDZUWHBCWWtKbmIzSkNaMFZGUVZsUEwwMUJSVXhDUVRCTlF6Tk9iR0pIV1hSaFJ6bDZaRWRXYTAxRlFVZERhWE5IUVZGUlFncG5OemgzUVZGM1JVMW5kM2RoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlUxRVowZERhWE5IUVZGUlFtYzNPSGRCVVRCRlMyZDNiMDlIUlROTmVrSnJUMVJhYWsxNll6Rk9ha0pxV1RKWmVGcEVUbXdLVFVSc2JVNHlTbWxaTWs1cldYcG5ORTVxWjNoUFIxbDZUWHBCWmtKbmIzSkNaMFZGUVZsUEwwMUJSVTlDUWtWTlJETktiRnB1VFhaaFIxWm9Xa2hOZGdwaVYwWndZbXBCWVVKbmIzSkNaMFZGUVZsUEwwMUJSVkJDUVhkTlEycEZkMDU2UlRCT2VsVXhUV3ByZDB4bldVdExkMWxDUWtGSFJIWjZRVUpGUVZGbkNrUkNOVzlrU0ZKM1kzcHZka3d5WkhCa1IyZ3hXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWM1IwRlpTMHQzV1VKQ1FVZEVkbnBCUWtWUlVVc0tSRUZuZVU1VVkzbE5SR013VFhwQ2RFSm5iM0pDWjBWRlFWbFBMMDFCUlZOQ1JqaE5XRmRvTUdSSVFucFBhVGgyV2pKc01HRklWbWxNYlU1MllsTTVid3BrVjJSdVlWYzFibHB0Um1wYVV6bHlXbGhLZFZwWGVIcE1WMDUyWWxjeE1XSnRiREJsVXpoMVdqSnNNR0ZJVm1sTU0yUjJZMjEwYldKSE9UTmplVGxwQ21SWGJITmFRelUxV1ZjeGMxRklTbXhhYmsxMllVZFdhRnBJVFhaaVYwWndZbXBCTkVKbmIzSkNaMFZGUVZsUEwwMUJSVlJDUTI5TlMwUm9hRTU2VFhjS1drUnJNbGw2VFROT1ZGbDNXVEpPYlUxWFVYcGFWRUUxV21wa2FWbHRUbXBhUjAwMFQwUlpORTFVYUcxTmVrMTNTVkZaUzB0M1dVSkNRVWRFZG5wQlFncEdRVkZVUkVKR00ySXpTbkphYlhoMlpERTVhMkZZVG5kWldGSnFZVVJDYTBKbmIzSkNaMFZGUVZsUEwwMUJSVlpDUmxsTlZrZG9NR1JJUW5wUGFUaDJDbG95YkRCaFNGWnBURzFPZG1KVE9XOWtWMlJ1WVZjMWJscHRSbXBhVXpseVdsaEtkVnBYZUhwTVYwNTJZbGN4TVdKdGJEQmxVemxvV1ROU2NHSXlOWG9LVEROS01XSnVUWFpOYW1jMVRYcEZlVTFxVVRGTmFtdDJXVmhTTUZwWE1YZGtTRTEyVFZSQlYwSm5iM0pDWjBWRlFWbFBMMDFCUlZkQ1FXZE5RbTVDTVFwWmJYaHdXWHBDUjBKbmIzSkNaMFZGUVZsUEwwMUJSVmxDUkdkTlRtNUtiR05IT0RaaFNGWnVXakpzZFZveVdtaFpNbFYyWVRKV2VXSnRWbk5qZVRGcUNtSXlNWFJrVnpWd1pFaHJObU50Vm0xUGJrcHNXbTVOZG1GSFZtaGFTRTEyWWxkR2NHSnFRMEpwZDFsTFMzZFpRa0pCU0ZkbFVVbEZRV2RTT1VKSWMwRUtaVkZDTTBGT01EbE5SM0pIZUhoRmVWbDRhMlZJU214dVRuZExhVk5zTmpRemFubDBMelJsUzJOdlFYWkxaVFpQUVVGQlFtNHdTamQwVFZWQlFVRlJSQXBCUldkM1VtZEphRUZLVW1OdGREZE1URlo1TmxscmRESldRMlZITHpGSmJHeDRlblZ2Y1hSMFRYWjFWVE0ySzFoVmVIbElRV2xGUVRkMFJraFlNMU14Q2t4VE0wTnZVakpDVUN0cFdraHZNa0kxZEVOek0xTnBTbmxpUjNSUFYzTkxTbmRKZDBObldVbExiMXBKZW1vd1JVRjNUVVJoUVVGM1dsRkplRUZRZVhNS1VHaDVOWE1yWVd4T09IWmphbUp0Ym5sbFVGTnZSbk54UWpCVEsyMUhUVWRKTVdwaU0waDVjMkZFZEVrMFlWVnBSMjh6YUV4VUsxWmlMMFpZTkVGSmR3cGhOa3BzZFRoQ2VWcFVVamhpY1RaTVkzSmtVV2hSYXpFeVVsRjNVRWxRTUZaVFVsUmpVMUJEV2xCT01qZENUMGhDZG14d1ZWcFlaRmxJZEdKVE5sSkhDaTB0TFMwdFJVNUVJRU5GVWxSSlJrbERRVlJGTFMwdExTMEsifX19fQ=="}],"timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyTADAgEAMIICwAYJKoZIhvcNAQcCoIICsTCCAq0CAQMxDTALBglghkgBZQMEAgEwgbcGCyqGSIb3DQEJEAEEoIGnBIGkMIGhAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgnoBrBpVp6rE6NpkkbFE6ellPg0Mbrl3oJY1DRYcy0DMCFAcrEaekF6ClmLTGXfdMDSzvMkAGGA8yMDI2MDcwODE2MDcxMVowAwIBAaAypDAwLjEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MRUwEwYDVQQDEwxzaWdzdG9yZS10c2GgADGCAdswggHXAgEBMFEwOTEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MSAwHgYDVQQDExdzaWdzdG9yZS10c2Etc2VsZnNpZ25lZAIUOhNULwyQYe68wUMvy4qOiyojiwwwCwYJYIZIAWUDBAIBoIH8MBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAcBgkqhkiG9w0BCQUxDxcNMjYwNzA4MTYwNzExWjAvBgkqhkiG9w0BCQQxIgQgoh3xyE+NDDIXV8dfbkBMV77dFVCVTL2d5wZzNPrCYVUwgY4GCyqGSIb3DQEJEAIvMX8wfTB7MHkEIIX5J7wHq2LKw7RDVsEO/IGyxog/2nq55thw2dE6zQW3MFUwPaQ7MDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAoGCCqGSM49BAMCBGcwZQIwOTPDBZ+IPGlPzaqIJPBMdrW4Uzl7/uKESAKIoPsvCnCV9AeAsGvbkzKQl/VWGcHwAjEApy0J5tSe8p9r2VFGqm544N9tayCPHIDZQH4WIhIp61awo/C5viqxuy2HdwCWsLdC"}]}},"messageSignature":{"messageDigest":{"algorithm":"SHA2_256","digest":"LYzYPZJ9HuNN3EAYHyTOGnXv2o29JNh4ncy/JQkIfxs="},"signature":"MEUCIQCqmXSrFOeRew20EbtHl7dQCYBh//hzOnQ608NmVdWCwQIgevm3AqsNLsvEWcy1fgybQ5PEfMUSPbsvBWZcOxCdN8I="}}
 
1
+ {"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json", "verificationMaterial":{"certificate":{"rawBytes":"MIIHTDCCBtKgAwIBAgIUOyrKpK9Lh9WkUv+kf8KJN/OKPUwwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwODI3MDczNDQ0WhcNMjYwODI3MDc0NDQ0WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQCXjsWoL88UCKnc6yA0/ApBd37BGX5wsACb91I/xjGT8WkcuA56D2cDC7jXqeGuxCxfFqgdOrT1UCCLp3aPgiqOCBfEwggXtMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUJIe5VkBt67haN8rDRkVdkPT84T0wHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wawYDVR0RAQH/BGEwX4ZdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDkGCisGAQQBg78wAQEEK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wHwYKKwYBBAGDvzABAgQRd29ya2Zsb3dfZGlzcGF0Y2gwNgYKKwYBBAGDvzABAwQoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTATBgorBgEEAYO/MAEEBAVCdWlsZDArBgorBgEEAYO/MAEFBB1odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTAdBgorBgEEAYO/MAEGBA9yZWZzL2hlYWRzL21haW4wOwYKKwYBBAGDvzABCAQtDCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMG0GCisGAQQBg78wAQkEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wAQoEKgwoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTAbBgorBgEEAYO/MAELBA0MC3NlbGYtaG9zdGVkMEAGCisGAQQBg78wAQwEMgwwaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MDgGCisGAQQBg78wAQ0EKgwoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTAfBgorBgEEAYO/MAEOBBEMD3JlZnMvaGVhZHMvbWFpbjAaBgorBgEEAYO/MAEPBAwMCjEwNzE0NzU1MjkwLgYKKwYBBAGDvzABEAQgDB5odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2UwGAYKKwYBBAGDvzABEQQKDAgyNTcyMDc0MzBtBgorBgEEAYO/MAESBF8MXWh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS8uZ2l0aHViL3dvcmtmbG93cy9idWlsZC55YW1sQHJlZnMvaGVhZHMvbWFpbjA4BgorBgEEAYO/MAETBCoMKGFkZGY0NzQxZmFmYjU1YjRjMTAxYjE1OTg1ZGZhZWVhN2M3YzJmM2EwIQYKKwYBBAGDvzABFAQTDBF3b3JrZmxvd19kaXNwYXRjaDBkBgorBgEEAYO/MAEVBFYMVGh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS9hY3Rpb25zL3J1bnMvMzMwNDU0MTE3MDQvYXR0ZW1wdHMvMTAWBgorBgEEAYO/MAEWBAgMBnB1YmxpYzBGBgorBgEEAYO/MAEYBDgMNnJlcG86aHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHk6cmVmOnJlZnMvaGVhZHMvbWFpbjCBiwYKKwYBBAHWeQIEAgR9BHsAeQB3AN09MGrGxxEyYxkeHJlnNwKiSl643jyt/4eKcoAvKe6OAAABoEIkgwsAAAQDAEgwRgIhAOWvWlT0xbe62Usbx0upDIzRtlXMWOeSLohmZ3ItNlJRAiEA+XNyUdUXq0mNIK06rX77y0/+2BrUziPeJVCyj5DHQJcwCgYIKoZIzj0EAwMDaAAwZQIwS9hrTN+j3MtpiKSxrj2F8xcOblEBX1zR0EQorAHYvG1a8gicbQvUD72jyNH8HPd0AjEAr6EpYiz26atUsLd3py+S8Mhk2XwW2YYilTWNy0aQ+J8+KIzeln94qIVLVhu+fNzJ"}, "tlogEntries":[{"logIndex":"2614421669", "logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="}, "kindVersion":{"kind":"hashedrekord", "version":"0.0.1"}, "integratedTime":"1787816084", "inclusionPromise":{"signedEntryTimestamp":"MEUCIE5suLuKg+0LzlRgCo5XeNaUYSjMckMx7LnT53mkgYUVAiEAjptWHsU896GrSDLVUmk/odrg6HncVY6rpwZKGtxMHh8="}, "inclusionProof":{"logIndex":"2492517407", "rootHash":"DNfcpOAwx7pzm+oNwKuczssuDdJ62fBpdb0fay2a2gc=", "treeSize":"2492517702", "hashes":["ym4MPuyMX580RfjRfieeQSGFIzqMIGhqa4tE5UnjWtE=", "+dGlwNK1Nfd+UzBNO7q+a0850cfEEbuTpNBtGGdARO8=", "N80X7jlayNKjoh25uDnQaYvX7cE2YevM06ndw9MYrco=", "pLOrbLk0GWTWc75INkCNeoDs2MkXl/rZWEWmU+0ZH9Q=", "SUgMXOortK+G0k2fjkFUKYy0QB8G1YNM/F8WM27GOPM=", "KrjvU0Ooz6UXWxVyQuicAUFkR0TkuflIuwYUX8b4HGY=", "cDFHQpxGSKY0/uTE7K+bHrC68ggCZl7vp8nVYHghpfk=", "/jfSbQ9zmJ0BvAv6bl/F+4xBuLUxLNZg0a3t1z3Vwfs=", "Jfl8zeSmLyDM+F84WOY0xcYfBGuRjh3GflkZfESgpW0=", "pWFHswOH54XKdA32uuyf+MqM67EkrbS3mNoOOWf82YY=", "9Z0akIavSZQfGwx+qt9uXOimpUzrQUDuBG4WqxrUICw=", "5IX0hbRxcv4MfzwgxDV3FdWPmsCJk++fDlfjia6J5FM=", "JudKhBfUc6ZLff0dbtidJ1/UlyM2L1U1kpxAvQtZyg0=", "NSuKPSrhPDg3xoCPz74qzkB8LWy1aV46KTWus0HJYzQ=", "7TfDCaMWgEwSJEZd/e33b24919rF4IDJLmbqNNRNhZs=", "0HfdxDt/zGugZLIuHasrdLEW9s8OaTykSSqBEDFQXdw=", "SndbMKVtcTenAkwi2JBfGzD+mhexp1qJbRIY+A1JRIU=", "xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="], "checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n2492517702\nDNfcpOAwx7pzm+oNwKuczssuDdJ62fBpdb0fay2a2gc=\n\n— rekor.sigstore.dev wNI9ajBGAiEA0Zx/L/y7BC+gM4CBnhux6XgpD059fl6ZyU2Tcac4zqsCIQC/LLnI4Uw/sfxqeiT3ZerAsom/JeywnumBDRZun035XQ==\n"}}, "canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJlNjAyODQ3NzgzYTk1YWU5NDRhZTg4MDU0YzNhOWJjZWIzYjJmZWRjYTE1ZGZiYTdkZjFlN2JmZjU5Zjk5ZTE3In19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FWUNJUUNkeGo2NWhVK3VhYllwQ2R5ZlcvRVdDOVlRQTQzSENmaENtWGN0R1N2QXdRSWhBTVA3Z016dExyYWlsQzE3cUswcEcxV0tzRTIrWjJ4bTN4TUt1c2VJdVZBLyIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaFVSRU5EUW5STFowRjNTVUpCWjBsVlQzbHlTM0JMT1V4b09WZHJWWFlyYTJZNFMwcE9MMDlMVUZWM2QwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDlFU1ROTlJHTjZUa1JSTUZkb1kwNU5hbGwzVDBSSk0wMUVZekJPUkZFd1YycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZSUTFocWMxZHZURGc0VlVOTGJtTTJlVUV3TDBGd1FtUXpOMEpIV0RWM2MwRkRZamtLTVVrdmVHcEhWRGhYYTJOMVFUVTJSREpqUkVNM2FsaHhaVWQxZUVONFprWnhaMlJQY2xReFZVTkRUSEF6WVZCbmFYRlBRMEptUlhkbloxaDBUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlZLU1dVMUNsWnJRblEyTjJoaFRqaHlSRkpyVm1SclVGUTRORlF3ZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJGM1dVUldVakJTUVZGSUwwSkhSWGRZTkZwa1lVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKb01Wb3laSEJpYldSdFdWZE9iQXBNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU1rb3hZVmQ0YTB4dWJHaGlWM2hCQ21OdFZtMWplVGx2V2xkR2EyTjVPWFJaVjJ4MVRVUnJSME5wYzBkQlVWRkNaemM0ZDBGUlJVVkxNbWd3WkVoQ2VrOXBPSFprUnpseVdsYzBkVmxYVGpBS1lWYzVkV041Tlc1aFdGSnZaRmRLTVdNeVZubFpNamwxWkVkV2RXUkROV3BpTWpCM1NIZFpTMHQzV1VKQ1FVZEVkbnBCUWtGblVWSmtNamw1WVRKYWN3cGlNMlJtV2tkc2VtTkhSakJaTW1kM1RtZFpTMHQzV1VKQ1FVZEVkbnBCUWtGM1VXOVpWMUpyV21wUk0wNUVSbTFaVjFwcFRsUldhVTVIVFhoTlJFWnBDazFVVlRWUFJGWnJXbTFHYkZwWFJUTlplbVJxVFcxWmVsbFVRVlJDWjI5eVFtZEZSVUZaVHk5TlFVVkZRa0ZXUTJSWGJITmFSRUZ5UW1kdmNrSm5SVVVLUVZsUEwwMUJSVVpDUWpGdlpGZGtibUZYTlc1YWJVWnFXbE01Y2xwWVNuVmFWM2g2VEZkT2RtSlhNVEZpYld3d1pWUkJaRUpuYjNKQ1owVkZRVmxQTHdwTlFVVkhRa0U1ZVZwWFducE1NbWhzV1ZkU2Vrd3lNV2hoVnpSM1QzZFpTMHQzV1VKQ1FVZEVkbnBCUWtOQlVYUkVRM1J2WkVoU2QyTjZiM1pNTTFKMkNtRXlWblZNYlVacVpFZHNkbUp1VFhWYU1td3dZVWhXYVdSWVRteGpiVTUyWW01U2JHSnVVWFZaTWpsMFRVY3dSME5wYzBkQlVWRkNaemM0ZDBGUmEwVUtXSGQ0WkdGSVVqQmpTRTAyVEhrNWJtRllVbTlrVjBsMVdUSTVkRXd5YURGYU1tUndZbTFrYlZsWFRteE1NblJzWTIwMWJHSklUWFJaTWpsMFlsaFdkUXBoV0ZJMVRIazFibUZZVW05a1YwbDJaREk1ZVdFeVduTmlNMlI2VERKS01XRlhlR3RNYm14b1lsZDRRV050Vm0xamVUbHZXbGRHYTJONU9YUlpWMngxQ2sxRVowZERhWE5IUVZGUlFtYzNPSGRCVVc5RlMyZDNiMWxYVW10YWFsRXpUa1JHYlZsWFdtbE9WRlpwVGtkTmVFMUVSbWxOVkZVMVQwUldhMXB0Um13S1dsZEZNMWw2WkdwTmJWbDZXVlJCWWtKbmIzSkNaMFZGUVZsUEwwMUJSVXhDUVRCTlF6Tk9iR0pIV1hSaFJ6bDZaRWRXYTAxRlFVZERhWE5IUVZGUlFncG5OemgzUVZGM1JVMW5kM2RoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlUxRVowZERhWE5IUVZGUlFtYzNPSGRCVVRCRlMyZDNiMWxYVW10YWFsRXpUa1JHYlZsWFdtbE9WRlpwVGtkTmVFMUVSbWtLVFZSVk5VOUVWbXRhYlVac1dsZEZNMWw2WkdwTmJWbDZXVlJCWmtKbmIzSkNaMFZGUVZsUEwwMUJSVTlDUWtWTlJETktiRnB1VFhaaFIxWm9Xa2hOZGdwaVYwWndZbXBCWVVKbmIzSkNaMFZGUVZsUEwwMUJSVkJDUVhkTlEycEZkMDU2UlRCT2VsVXhUV3ByZDB4bldVdExkMWxDUWtGSFJIWjZRVUpGUVZGbkNrUkNOVzlrU0ZKM1kzcHZka3d5WkhCa1IyZ3hXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWM1IwRlpTMHQzV1VKQ1FVZEVkbnBCUWtWUlVVc0tSRUZuZVU1VVkzbE5SR013VFhwQ2RFSm5iM0pDWjBWRlFWbFBMMDFCUlZOQ1JqaE5XRmRvTUdSSVFucFBhVGgyV2pKc01HRklWbWxNYlU1MllsTTVid3BrVjJSdVlWYzFibHB0Um1wYVV6bHlXbGhLZFZwWGVIcE1WMDUyWWxjeE1XSnRiREJsVXpoMVdqSnNNR0ZJVm1sTU0yUjJZMjEwYldKSE9UTmplVGxwQ21SWGJITmFRelUxV1ZjeGMxRklTbXhhYmsxMllVZFdhRnBJVFhaaVYwWndZbXBCTkVKbmIzSkNaMFZGUVZsUEwwMUJSVlJDUTI5TlMwZEdhMXBIV1RBS1RucFJlRnB0Um0xWmFsVXhXV3BTYWsxVVFYaFpha1V4VDFSbk1WcEhXbWhhVjFab1RqSk5NMWw2U20xTk1rVjNTVkZaUzB0M1dVSkNRVWRFZG5wQlFncEdRVkZVUkVKR00ySXpTbkphYlhoMlpERTVhMkZZVG5kWldGSnFZVVJDYTBKbmIzSkNaMFZGUVZsUEwwMUJSVlpDUmxsTlZrZG9NR1JJUW5wUGFUaDJDbG95YkRCaFNGWnBURzFPZG1KVE9XOWtWMlJ1WVZjMWJscHRSbXBhVXpseVdsaEtkVnBYZUhwTVYwNTJZbGN4TVdKdGJEQmxVemxvV1ROU2NHSXlOWG9LVEROS01XSnVUWFpOZWsxM1RrUlZNRTFVUlROTlJGRjJXVmhTTUZwWE1YZGtTRTEyVFZSQlYwSm5iM0pDWjBWRlFWbFBMMDFCUlZkQ1FXZE5RbTVDTVFwWmJYaHdXWHBDUjBKbmIzSkNaMFZGUVZsUEwwMUJSVmxDUkdkTlRtNUtiR05IT0RaaFNGWnVXakpzZFZveVdtaFpNbFYyWVRKV2VXSnRWbk5qZVRGcUNtSXlNWFJrVnpWd1pFaHJObU50Vm0xUGJrcHNXbTVOZG1GSFZtaGFTRTEyWWxkR2NHSnFRMEpwZDFsTFMzZFpRa0pCU0ZkbFVVbEZRV2RTT1VKSWMwRUtaVkZDTTBGT01EbE5SM0pIZUhoRmVWbDRhMlZJU214dVRuZExhVk5zTmpRemFubDBMelJsUzJOdlFYWkxaVFpQUVVGQlFtOUZTV3RuZDNOQlFVRlJSQXBCUldkM1VtZEphRUZQVjNaWGJGUXdlR0psTmpKVmMySjRNSFZ3UkVsNlVuUnNXRTFYVDJWVFRHOW9iVm96U1hST2JFcFNRV2xGUVN0WVRubFZaRlZZQ25Fd2JVNUpTekEyY2xnM04za3dMeXN5UW5KVmVtbFFaVXBXUTNscU5VUklVVXBqZDBObldVbExiMXBKZW1vd1JVRjNUVVJoUVVGM1dsRkpkMU01YUhJS1ZFNHJhak5OZEhCcFMxTjRjbW95UmpoNFkwOWliRVZDV0RGNlVqQkZVVzl5UVVoWmRrY3hZVGhuYVdOaVVYWlZSRGN5YW5sT1NEaElVR1F3UVdwRlFRcHlOa1Z3V1dsNk1qWmhkRlZ6VEdRemNIa3JVemhOYUdzeVdIZFhNbGxaYVd4VVYwNTVNR0ZSSzBvNEswdEplbVZzYmprMGNVbFdURlpvZFN0bVRucEtDaTB0TFMwdFJVNUVJRU5GVWxSSlJrbERRVlJGTFMwdExTMEsifX19fQ=="}], "timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyjADAgEAMIICwQYJKoZIhvcNAQcCoIICsjCCAq4CAQMxDTALBglghkgBZQMEAgEwgbgGCyqGSIb3DQEJEAEEoIGoBIGlMIGiAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgymD3Fq7MPmV58kuGv0Zemq/djnK5zW7XrlfbnMruYvkCFQDiw/wHaqFwjRHPmKQnkw7m6gtdRBgPMjAyNjA4MjcwNzM0NDRaMAMCAQGgMqQwMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhoAAxggHbMIIB1wIBATBRMDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAsGCWCGSAFlAwQCAaCB/DAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTI2MDgyNzA3MzQ0NFowLwYJKoZIhvcNAQkEMSIEICQdkg+qgm8o2IJ1FWAqVzeOHhP74lnWpIXiPkZ8BAneMIGOBgsqhkiG9w0BCRACLzF/MH0wezB5BCCF+Se8B6tiysO0Q1bBDvyBssaIP9p6uebYcNnROs0FtzBVMD2kOzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAgRnMGUCMGXN1VSmAyezxXQ8yvfcWGnTK4Wbq/wATzxAuKD63kTeHIW11XbcZuLGv/l5T6JL8gIxAOv7beEGjXbEOgQP11nniuJP6qouEjlq2Yt64K8N+KxReLq8GSKrnlyoT/XuesU8pg=="}]}}, "messageSignature":{"messageDigest":{"algorithm":"SHA2_256", "digest":"5gKEd4OpWulErogFTDqbzrOy/tyhXfun3x57/1n5nhc="}, "signature":"MEYCIQCdxj65hU+uabYpCdyfW/EWC9YQA43HCfhCmXctGSvAwQIhAMP7gMztLrailC17qK0pG1WKsE2+Z2xm3xMKuseIuVA/"}}
build/torch213-cxx11-rocm71-x86_64-linux/paged_attention/__init__.py DELETED
@@ -1,26 +0,0 @@
1
- import ctypes
2
- import importlib.util
3
- import sys
4
- from pathlib import Path
5
- from types import ModuleType
6
-
7
-
8
- def _import_from_path(file_path: Path) -> ModuleType:
9
- # We cannot use the module name as-is, after adding it to `sys.modules`,
10
- # it would also be used for other imports. So, we make a module name that
11
- # depends on the path for it to be unique using the hex-encoded hash of
12
- # the path.
13
- path_hash = "{:x}".format(ctypes.c_size_t(hash(file_path.absolute())).value)
14
- module_name = path_hash
15
- spec = importlib.util.spec_from_file_location(module_name, file_path)
16
- if spec is None:
17
- raise ImportError(f"Cannot load spec for {module_name} from {file_path}")
18
- module = importlib.util.module_from_spec(spec)
19
- if module is None:
20
- raise ImportError(f"Cannot load module {module_name} from spec")
21
- sys.modules[module_name] = module
22
- spec.loader.exec_module(module) # type: ignore
23
- return module
24
-
25
-
26
- globals().update(vars(_import_from_path(Path(__file__).parent.parent / "__init__.py")))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
build/torch213-cxx11-rocm72-x86_64-linux/_ops.py CHANGED
@@ -1,9 +1,9 @@
1
  import torch
2
- from . import _paged_attention_rocm_8a730d9
3
- ops = torch.ops._paged_attention_rocm_8a730d9
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
- return f"_paged_attention_rocm_8a730d9::{op_name}"
 
1
  import torch
2
+ from . import _paged_attention_rocm_addf474
3
+ ops = torch.ops._paged_attention_rocm_addf474
4
 
5
  def add_op_namespace_prefix(op_name: str):
6
  """
7
  Prefix op by namespace.
8
  """
9
+ return f"_paged_attention_rocm_addf474::{op_name}"
build/torch213-cxx11-rocm72-x86_64-linux/{_paged_attention_rocm_8a730d9.abi3.so → _paged_attention_rocm_addf474.abi3.so} RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:b4ab3492ae2d482c928f32299715895cdbbfe02942e9d183b6c5c9a89e028e76
3
  size 54802752
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:ab673fa60545ad83763b844d9e776182c4d5435814ae709939ad3423e43b1f45
3
  size 54802752
build/torch213-cxx11-rocm72-x86_64-linux/metadata.json CHANGED
@@ -1,9 +1,10 @@
1
  {
2
  "name": "paged-attention",
3
- "id": "_paged_attention_rocm_8a730d9",
4
  "version": 1,
5
  "license": "Apache-2.0",
6
  "python-depends": [],
 
7
  "backend": {
8
  "type": "rocm",
9
  "archs": [
@@ -21,20 +22,19 @@
21
  "files": {
22
  "__init__.py": "oes6jQj02wGGtnJVomIE7ZJr2qnJmOm6CWurue5Vf6w=",
23
  "_custom_ops.py": "tnC6OR7TPhMV+tt8MyUyIH2gDIdxBzHT+1z1NUhA9EE=",
24
- "_ops.py": "0XxQOKt9j5JhJ652GcGMNY9DZL9aZ09tHhselfFjCgI=",
25
- "_paged_attention_rocm_8a730d9.abi3.so": "tKs0kq4tSCySjzIplxWJXNu/4ClC6dGDtsXJqJ4CjnY=",
26
- "paged_attention/__init__.py": "DFYPlrhXwYjEqCl/8n0SmWGZV8NFml5DPhMjKfv98GY=",
27
  "platforms.py": "NeAhENqA8yXHgy3EfkYP1Bkx1n6aStkExV9py7Jvdiw="
28
  }
29
  },
30
  "provenance": {
31
  "kernel-builder": {
32
  "version": "0.17.0-dev0",
33
- "sha": "81580bb92577f2f7228661ca2a221fc052375709",
34
  "dirty": false
35
  },
36
  "kernel": {
37
- "sha": "8a730d96c37560ccf1d3e09f7bbccdc886818f33",
38
  "dirty": false
39
  }
40
  }
 
1
  {
2
  "name": "paged-attention",
3
+ "id": "_paged_attention_rocm_addf474",
4
  "version": 1,
5
  "license": "Apache-2.0",
6
  "python-depends": [],
7
+ "kernel-depends": [],
8
  "backend": {
9
  "type": "rocm",
10
  "archs": [
 
22
  "files": {
23
  "__init__.py": "oes6jQj02wGGtnJVomIE7ZJr2qnJmOm6CWurue5Vf6w=",
24
  "_custom_ops.py": "tnC6OR7TPhMV+tt8MyUyIH2gDIdxBzHT+1z1NUhA9EE=",
25
+ "_ops.py": "xXa2NPhR4Ged5ClRhCjr1VLevF56KY0pVM4TumQRwJM=",
26
+ "_paged_attention_rocm_addf474.abi3.so": "q2c/pgVFrYN2O4RNnndhgsTVQ1gUrnCZOa00I+Q7H0U=",
 
27
  "platforms.py": "NeAhENqA8yXHgy3EfkYP1Bkx1n6aStkExV9py7Jvdiw="
28
  }
29
  },
30
  "provenance": {
31
  "kernel-builder": {
32
  "version": "0.17.0-dev0",
33
+ "commit": "081dcd473f8eca27226eef1f9c47c45b86c756b5",
34
  "dirty": false
35
  },
36
  "kernel": {
37
+ "commit": "addf4741fafb55b4c101b15985dfaeea7c7c2f3a",
38
  "dirty": false
39
  }
40
  }
build/torch213-cxx11-rocm72-x86_64-linux/metadata.json.sigstore CHANGED
@@ -1 +1 @@
1
- {"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json","verificationMaterial":{"certificate":{"rawBytes":"MIIHSzCCBtCgAwIBAgIUF4qkjx1CstFl5f2QF1kjkT/y6NowCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwNzA4MTYwNzEzWhcNMjYwNzA4MTYxNzEzWjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQJ3voig5USQ9XaQda8ayta9LEIL40VXh9jdZLcT0sih0NNQ84W0XNQxNnodxnOkjuKZb/XkZW5TuH1QVaklajKOCBe8wggXrMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUbI96i1iHyeOkJiorL3jps5rvpu4wHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wawYDVR0RAQH/BGEwX4ZdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDkGCisGAQQBg78wAQEEK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wHwYKKwYBBAGDvzABAgQRd29ya2Zsb3dfZGlzcGF0Y2gwNgYKKwYBBAGDvzABAwQoOGE3MzBkOTZjMzc1NjBjY2YxZDNlMDlmN2JiY2NkYzg4NjgxOGYzMzATBgorBgEEAYO/MAEEBAVCdWlsZDArBgorBgEEAYO/MAEFBB1odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTAdBgorBgEEAYO/MAEGBA9yZWZzL2hlYWRzL21haW4wOwYKKwYBBAGDvzABCAQtDCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMG0GCisGAQQBg78wAQkEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wAQoEKgwoOGE3MzBkOTZjMzc1NjBjY2YxZDNlMDlmN2JiY2NkYzg4NjgxOGYzMzAbBgorBgEEAYO/MAELBA0MC3NlbGYtaG9zdGVkMEAGCisGAQQBg78wAQwEMgwwaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MDgGCisGAQQBg78wAQ0EKgwoOGE3MzBkOTZjMzc1NjBjY2YxZDNlMDlmN2JiY2NkYzg4NjgxOGYzMzAfBgorBgEEAYO/MAEOBBEMD3JlZnMvaGVhZHMvbWFpbjAaBgorBgEEAYO/MAEPBAwMCjEwNzE0NzU1MjkwLgYKKwYBBAGDvzABEAQgDB5odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2UwGAYKKwYBBAGDvzABEQQKDAgyNTcyMDc0MzBtBgorBgEEAYO/MAESBF8MXWh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS8uZ2l0aHViL3dvcmtmbG93cy9idWlsZC55YW1sQHJlZnMvaGVhZHMvbWFpbjA4BgorBgEEAYO/MAETBCoMKDhhNzMwZDk2YzM3NTYwY2NmMWQzZTA5ZjdiYmNjZGM4ODY4MThmMzMwIQYKKwYBBAGDvzABFAQTDBF3b3JrZmxvd19kaXNwYXRjaDBkBgorBgEEAYO/MAEVBFYMVGh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS9hY3Rpb25zL3J1bnMvMjg5MzEyMjQ1MjkvYXR0ZW1wdHMvMTAWBgorBgEEAYO/MAEWBAgMBnB1YmxpYzBGBgorBgEEAYO/MAEYBDgMNnJlcG86aHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHk6cmVmOnJlZnMvaGVhZHMvbWFpbjCBiQYKKwYBBAHWeQIEAgR7BHkAdwB1AN09MGrGxxEyYxkeHJlnNwKiSl643jyt/4eKcoAvKe6OAAABn0J7v0QAAAQDAEYwRAIgHT+8F5C06dPxn1TFzfONFblBDGhk2omRfla81FSbBm8CICvfwNKmutBYw0oH/YyNC60vYtbZolnPx/TAlaiKVuA4MAoGCCqGSM49BAMDA2kAMGYCMQDKggGazjGXZ6IUSQmh/pZ7DaVyPK1XeLbEqR4ixcCQNa4ch709c0zss6JZYe57cyUCMQDB6UWz+CaAIuLw1WLYsbTedoneix1H+DLnmL/WWMuS+f0uKArXBLl87WFxqdBPdvA="},"tlogEntries":[{"logIndex":"2117652931","logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="},"kindVersion":{"kind":"hashedrekord","version":"0.0.1"},"integratedTime":"1783526834","inclusionPromise":{"signedEntryTimestamp":"MEQCIE9M1TOKI3nfxPDhJsGdh5MAfi3/VNhZmEe/MOLEY0FvAiARW+8HFWnKyv2WNVtHjONv2EMXKT0hFx+3kYExhCuibg=="},"inclusionProof":{"logIndex":"1995748669","rootHash":"91JZKs702rq1b7cYb1M53cegsDO4Qw5ieojlNyjcf+k=","treeSize":"1995748774","hashes":["LbBDUSexQ/verSFxEE6bWOSTQ/3TtL3nVJP8WehsKRE=","o0MpK12sp9b9S/P4uXGtCde55R6PQZI6tepUnd2z6dw=","NYJi1FwrtQaMmlQKoOaJRDAxKAHIxl714lXLv/I+PF0=","i3Pb5MwWGGDFqpuCAeHBlM9JsJr2xBu3OheGDFA+zLo=","cK7KUWVB3Qz4r7EWfLk/xJCFlF8yQGaGo2RwGGlfT2A=","HuqhTxX7G/9Usugdn7tDR0F4dGqatp8eStX8klYZFBk=","1TZxfDaSt3ML4hE4X17Vxu8c8O+XvGy+McwLKEqfzfw=","hlao8GKPByJ36paE289mMKbDtFC3uFA9j+wlpSySpL4=","BH3JZApWx5cQwsdkKKhvBKF9JqJRY8TiMNxvOBIDX+E=","WkyL76sOpSzUETVKXxGZJ/4GdsB4IRPP74IGolJ/6q8=","lG2+kX4Db/ANM/Ffw/QMSF7sqdZ2iDZRMdu0pZ6Ping=","3AcnHFwWkdjgLxYD9CksGlQadO/Lcr35iRlykj4cXfw=","QF8xujOLLPVnFEW0q4V8DtfovTxl4nGxcgVZKgDZ26w=","nxjt1WqBdXminu9ln0ZrTM1lZTtN2Psr9vrxxmXWPss=","v3Rnvwdy/iZuSJqQSjxAKTt0GBmX+4XksDaltKHxXs0=","lwFfNQVdnM+UXReXH9xyhoIKaRe1KrqgBwsxZGklig0=","frI9BMUdqa/KPLUCZ9yfDzZ2Z6tglf7SvThMJqEFBKU=","Bcvbbu+tDL+zr1H2q26c2ATmVu7v/f7JIFweUu7qDK8=","WajL3ZhY6ZX9meV3VTH9TkrbM31OF4o6+7foL0Uf6PI=","cyKMKBvHkQtwb2xR5svh+YppANOVdn7X8t4DuKMxICA=","+/VZ56MsIPxMiyLAodzKXo5TEWdQp36z89qLhpzloAo=","daxmZaajRpZV+JxHiOYZhJBiSKN5ucqjh2WnGbHhirw=","DOCeoSMovIvLExkhIvisow9AuNXgeWs4ECkyR6EcqYU="],"checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n1995748774\n91JZKs702rq1b7cYb1M53cegsDO4Qw5ieojlNyjcf+k=\n\n— rekor.sigstore.dev wNI9ajBFAiB96K4IJ6goKLBXltZVOlBOdzkzONJ0xi4H6w4im/NGjgIhALnStxBQnrPeEKy8UMngHqcFTPGPQNYaaBcLNMALM2Zp\n"}},"canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiI4NWE4MjUyMTE2NDQ1YTgzZjY2YjkzNjE0OWViNDJjYjIwMzBiOGJmYTQ5Yjc2YWYwNWUyYzQ5NDQ0NjBmZTkwIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FVUNJUUNVQS81UzRJYmJFajZ2QVV2TmNWZFJWeDVGTnB2TnZOTW5mRGd1ZHRPNk1nSWdHU0QvcGtaM1RlMjcwRXZGRzBOanFBR3QxTW1JR0tBZVVjVDV2MnFPUDlFPSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaFRla05EUW5SRFowRjNTVUpCWjBsVlJqUnhhMnA0TVVOemRFWnNOV1l5VVVZeGEycHJWQzk1Tms1dmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDU2UVRSTlZGbDNUbnBGZWxkb1kwNU5hbGwzVG5wQk5FMVVXWGhPZWtWNlYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZSU2pOMmIybG5OVlZUVVRsWVlWRmtZVGhoZVhSaE9VeEZTVXcwTUZaWWFEbHFaRm9LVEdOVU1ITnBhREJPVGxFNE5GY3dXRTVSZUU1dWIyUjRiazlyYW5WTFdtSXZXR3RhVnpWVWRVZ3hVVlpoYTJ4aGFrdFBRMEpsT0hkbloxaHlUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlZpU1RrMkNta3hhVWg1WlU5clNtbHZja3d6YW5Cek5YSjJjSFUwZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJGM1dVUldVakJTUVZGSUwwSkhSWGRZTkZwa1lVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKb01Wb3laSEJpYldSdFdWZE9iQXBNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU1rb3hZVmQ0YTB4dWJHaGlWM2hCQ21OdFZtMWplVGx2V2xkR2EyTjVPWFJaVjJ4MVRVUnJSME5wYzBkQlVWRkNaemM0ZDBGUlJVVkxNbWd3WkVoQ2VrOXBPSFprUnpseVdsYzBkVmxYVGpBS1lWYzVkV041Tlc1aFdGSnZaRmRLTVdNeVZubFpNamwxWkVkV2RXUkROV3BpTWpCM1NIZFpTMHQzV1VKQ1FVZEVkbnBCUWtGblVWSmtNamw1WVRKYWN3cGlNMlJtV2tkc2VtTkhSakJaTW1kM1RtZFpTMHQzV1VKQ1FVZEVkbnBCUWtGM1VXOVBSMFV6VFhwQ2EwOVVXbXBOZW1NeFRtcENhbGt5V1hoYVJFNXNDazFFYkcxT01rcHBXVEpPYTFsNlp6Uk9hbWQ0VDBkWmVrMTZRVlJDWjI5eVFtZEZSVUZaVHk5TlFVVkZRa0ZXUTJSWGJITmFSRUZ5UW1kdmNrSm5SVVVLUVZsUEwwMUJSVVpDUWpGdlpGZGtibUZYTlc1YWJVWnFXbE01Y2xwWVNuVmFWM2g2VEZkT2RtSlhNVEZpYld3d1pWUkJaRUpuYjNKQ1owVkZRVmxQTHdwTlFVVkhRa0U1ZVZwWFducE1NbWhzV1ZkU2Vrd3lNV2hoVnpSM1QzZFpTMHQzV1VKQ1FVZEVkbnBCUWtOQlVYUkVRM1J2WkVoU2QyTjZiM1pNTTFKMkNtRXlWblZNYlVacVpFZHNkbUp1VFhWYU1td3dZVWhXYVdSWVRteGpiVTUyWW01U2JHSnVVWFZaTWpsMFRVY3dSME5wYzBkQlVWRkNaemM0ZDBGUmEwVUtXSGQ0WkdGSVVqQmpTRTAyVEhrNWJtRllVbTlrVjBsMVdUSTVkRXd5YURGYU1tUndZbTFrYlZsWFRteE1NblJzWTIwMWJHSklUWFJaTWpsMFlsaFdkUXBoV0ZJMVRIazFibUZZVW05a1YwbDJaREk1ZVdFeVduTmlNMlI2VERKS01XRlhlR3RNYm14b1lsZDRRV050Vm0xamVUbHZXbGRHYTJONU9YUlpWMngxQ2sxRVowZERhWE5IUVZGUlFtYzNPSGRCVVc5RlMyZDNiMDlIUlROTmVrSnJUMVJhYWsxNll6Rk9ha0pxV1RKWmVGcEVUbXhOUkd4dFRqSkthVmt5VG1zS1dYcG5ORTVxWjNoUFIxbDZUWHBCWWtKbmIzSkNaMFZGUVZsUEwwMUJSVXhDUVRCTlF6Tk9iR0pIV1hSaFJ6bDZaRWRXYTAxRlFVZERhWE5IUVZGUlFncG5OemgzUVZGM1JVMW5kM2RoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlUxRVowZERhWE5IUVZGUlFtYzNPSGRCVVRCRlMyZDNiMDlIUlROTmVrSnJUMVJhYWsxNll6Rk9ha0pxV1RKWmVGcEVUbXdLVFVSc2JVNHlTbWxaTWs1cldYcG5ORTVxWjNoUFIxbDZUWHBCWmtKbmIzSkNaMFZGUVZsUEwwMUJSVTlDUWtWTlJETktiRnB1VFhaaFIxWm9Xa2hOZGdwaVYwWndZbXBCWVVKbmIzSkNaMFZGUVZsUEwwMUJSVkJDUVhkTlEycEZkMDU2UlRCT2VsVXhUV3ByZDB4bldVdExkMWxDUWtGSFJIWjZRVUpGUVZGbkNrUkNOVzlrU0ZKM1kzcHZka3d5WkhCa1IyZ3hXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWM1IwRlpTMHQzV1VKQ1FVZEVkbnBCUWtWUlVVc0tSRUZuZVU1VVkzbE5SR013VFhwQ2RFSm5iM0pDWjBWRlFWbFBMMDFCUlZOQ1JqaE5XRmRvTUdSSVFucFBhVGgyV2pKc01HRklWbWxNYlU1MllsTTVid3BrVjJSdVlWYzFibHB0Um1wYVV6bHlXbGhLZFZwWGVIcE1WMDUyWWxjeE1XSnRiREJsVXpoMVdqSnNNR0ZJVm1sTU0yUjJZMjEwYldKSE9UTmplVGxwQ21SWGJITmFRelUxV1ZjeGMxRklTbXhhYmsxMllVZFdhRnBJVFhaaVYwWndZbXBCTkVKbmIzSkNaMFZGUVZsUEwwMUJSVlJDUTI5TlMwUm9hRTU2VFhjS1drUnJNbGw2VFROT1ZGbDNXVEpPYlUxWFVYcGFWRUUxV21wa2FWbHRUbXBhUjAwMFQwUlpORTFVYUcxTmVrMTNTVkZaUzB0M1dVSkNRVWRFZG5wQlFncEdRVkZVUkVKR00ySXpTbkphYlhoMlpERTVhMkZZVG5kWldGSnFZVVJDYTBKbmIzSkNaMFZGUVZsUEwwMUJSVlpDUmxsTlZrZG9NR1JJUW5wUGFUaDJDbG95YkRCaFNGWnBURzFPZG1KVE9XOWtWMlJ1WVZjMWJscHRSbXBhVXpseVdsaEtkVnBYZUhwTVYwNTJZbGN4TVdKdGJEQmxVemxvV1ROU2NHSXlOWG9LVEROS01XSnVUWFpOYW1jMVRYcEZlVTFxVVRGTmFtdDJXVmhTTUZwWE1YZGtTRTEyVFZSQlYwSm5iM0pDWjBWRlFWbFBMMDFCUlZkQ1FXZE5RbTVDTVFwWmJYaHdXWHBDUjBKbmIzSkNaMFZGUVZsUEwwMUJSVmxDUkdkTlRtNUtiR05IT0RaaFNGWnVXakpzZFZveVdtaFpNbFYyWVRKV2VXSnRWbk5qZVRGcUNtSXlNWFJrVnpWd1pFaHJObU50Vm0xUGJrcHNXbTVOZG1GSFZtaGFTRTEyWWxkR2NHSnFRMEpwVVZsTFMzZFpRa0pCU0ZkbFVVbEZRV2RTTjBKSWEwRUtaSGRDTVVGT01EbE5SM0pIZUhoRmVWbDRhMlZJU214dVRuZExhVk5zTmpRemFubDBMelJsUzJOdlFYWkxaVFpQUVVGQlFtNHdTamQyTUZGQlFVRlJSQXBCUlZsM1VrRkpaMGhVS3poR05VTXdObVJRZUc0eFZFWjZaazlPUm1Kc1FrUkhhR3N5YjIxU1pteGhPREZHVTJKQ2JUaERTVU4yWm5kT1MyMTFkRUpaQ25jd2IwZ3ZXWGxPUXpZd2RsbDBZbHB2Ykc1UWVDOVVRV3hoYVV0V2RVRTBUVUZ2UjBORGNVZFRUVFE1UWtGTlJFRXlhMEZOUjFsRFRWRkVTMmRuUjJFS2VtcEhXRm8yU1ZWVFVXMW9MM0JhTjBSaFZubFFTekZZWlV4aVJYRlNOR2w0WTBOUlRtRTBZMmczTURsak1IcHpjelpLV2xsbE5UZGplVlZEVFZGRVFnbzJWVmQ2SzBOaFFVbDFUSGN4VjB4WmMySlVaV1J2Ym1WcGVERklLMFJNYm0xTUwxZFhUWFZUSzJZd2RVdEJjbGhDVEd3NE4xZEdlSEZrUWxCa2RrRTlDaTB0TFMwdFJVNUVJRU5GVWxSSlJrbERRVlJGTFMwdExTMEsifX19fQ=="}],"timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyjADAgEAMIICwQYJKoZIhvcNAQcCoIICsjCCAq4CAQMxDTALBglghkgBZQMEAgEwgbgGCyqGSIb3DQEJEAEEoIGoBIGlMIGiAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgrumQQaQBWEqqPiIJXxsc5Y7JMab3NpA1FxBGyFN3ClMCFQDL4NooYhu0enKjgOjVYDjPUuFx3xgPMjAyNjA3MDgxNjA3MTRaMAMCAQGgMqQwMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhoAAxggHbMIIB1wIBATBRMDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAsGCWCGSAFlAwQCAaCB/DAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTI2MDcwODE2MDcxNFowLwYJKoZIhvcNAQkEMSIEIFCmeA3EOPW9y/vymEjdhUki/fSWC6/4zK170/9F7l8WMIGOBgsqhkiG9w0BCRACLzF/MH0wezB5BCCF+Se8B6tiysO0Q1bBDvyBssaIP9p6uebYcNnROs0FtzBVMD2kOzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAgRnMGUCMChokKx1VDoCAsIljw4cuD36KFcxzqt9vJnsDBgoXw/VomU1/4sc73rF+vUGtqhaZAIxALBxLo2oo46irjPaMPBMVY4cKYU0n1MvRkh5/pZMriE5KsY2BtKUKKaRLxtiToW0xw=="}]}},"messageSignature":{"messageDigest":{"algorithm":"SHA2_256","digest":"haglIRZEWoP2a5NhSetCyyAwuL+km3avBeLElERg/pA="},"signature":"MEUCIQCUA/5S4IbbEj6vAUvNcVdRVx5FNpvNvNMnfDgudtO6MgIgGSD/pkZ3Te270EvFG0NjqAGt1MmIGKAeUcT5v2qOP9E="}}
 
1
+ {"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json", "verificationMaterial":{"certificate":{"rawBytes":"MIIHTTCCBtKgAwIBAgIUY7Gi4irjvC3+aCXbOifwQEsrpt8wCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwODI3MDczNDQ2WhcNMjYwODI3MDc0NDQ2WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEcdrEAX7BiQweHQiNNLUcbsOU9/NC7vsEN+kfRqnKrs+4iZLhdF+9/U6Fz+fUMJBDH3zx7dv9jxe37gjvu8fntaOCBfEwggXtMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUgwhuR2u+yeWM0fRSRzNmf6yRU50wHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wawYDVR0RAQH/BGEwX4ZdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDkGCisGAQQBg78wAQEEK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wHwYKKwYBBAGDvzABAgQRd29ya2Zsb3dfZGlzcGF0Y2gwNgYKKwYBBAGDvzABAwQoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTATBgorBgEEAYO/MAEEBAVCdWlsZDArBgorBgEEAYO/MAEFBB1odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTAdBgorBgEEAYO/MAEGBA9yZWZzL2hlYWRzL21haW4wOwYKKwYBBAGDvzABCAQtDCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMG0GCisGAQQBg78wAQkEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wAQoEKgwoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTAbBgorBgEEAYO/MAELBA0MC3NlbGYtaG9zdGVkMEAGCisGAQQBg78wAQwEMgwwaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MDgGCisGAQQBg78wAQ0EKgwoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTAfBgorBgEEAYO/MAEOBBEMD3JlZnMvaGVhZHMvbWFpbjAaBgorBgEEAYO/MAEPBAwMCjEwNzE0NzU1MjkwLgYKKwYBBAGDvzABEAQgDB5odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2UwGAYKKwYBBAGDvzABEQQKDAgyNTcyMDc0MzBtBgorBgEEAYO/MAESBF8MXWh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS8uZ2l0aHViL3dvcmtmbG93cy9idWlsZC55YW1sQHJlZnMvaGVhZHMvbWFpbjA4BgorBgEEAYO/MAETBCoMKGFkZGY0NzQxZmFmYjU1YjRjMTAxYjE1OTg1ZGZhZWVhN2M3YzJmM2EwIQYKKwYBBAGDvzABFAQTDBF3b3JrZmxvd19kaXNwYXRjaDBkBgorBgEEAYO/MAEVBFYMVGh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS9hY3Rpb25zL3J1bnMvMzMwNDU0MTE3MDQvYXR0ZW1wdHMvMTAWBgorBgEEAYO/MAEWBAgMBnB1YmxpYzBGBgorBgEEAYO/MAEYBDgMNnJlcG86aHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHk6cmVmOnJlZnMvaGVhZHMvbWFpbjCBiwYKKwYBBAHWeQIEAgR9BHsAeQB3AN09MGrGxxEyYxkeHJlnNwKiSl643jyt/4eKcoAvKe6OAAABoEIkiu0AAAQDAEgwRgIhAMLY5gxXpaZxHsQgxjoYE/r9EUF0HbbPllkxtc5PQ8EqAiEAvGiAzqTpHUzbihRyIlpeR8MogkkHL6to51FjH3uIF2owCgYIKoZIzj0EAwMDaQAwZgIxAKSEB/o+88GSb8DRxWxYfv0flm7HPvnBviNEyko+s8AZKK9/C4VNl/nxGA5nvzeCtgIxAOmqGH6QsdE/19149eYHOkXeEaOjccdNQUHYr0OPBFfUrobHk19DDMlrZEfLkmeXfQ=="}, "tlogEntries":[{"logIndex":"2614422489", "logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="}, "kindVersion":{"kind":"hashedrekord", "version":"0.0.1"}, "integratedTime":"1787816087", "inclusionPromise":{"signedEntryTimestamp":"MEQCIHP/0JPrDmUvDzi1KxoqikgKHW5ZVQbAekrMvIDJ34hcAiBxzhNWxvLOhYDGnj51nzw3Hipzp9ERZ5gOpFJELwXiZQ=="}, "inclusionProof":{"logIndex":"2492518227", "rootHash":"awloFJVfyHMqfE+rbaHW2Mp7PavF/IS4w//k3Bv1C78=", "treeSize":"2492518467", "hashes":["JEnBmFJpJyaJv8+nIxqYEgU/SJgHVF0zeM2XcSrLEMg=", "ZPfEZJn9Q/WF43WXp96f1kBNt+9KCFiJwPFjZYffxBI=", "rBG9CITaWOX7QyHTa1boJL80NB7QDqJW1ivPhALCONs=", "Ph9hl52eXt/AF/N9liBHevAdKS1IZzRW5QNb4OdALLA=", "4B5iaNzpuogZGdmUDJSCVALXCMMN1QlwBpjd8akiuH8=", "PtQuMu897+heX+7SkIG+QMmZ70nRTMA5guBwT0VhllQ=", "FA6Ep90eYaxgTS2uXLb6hkt/KQuPADVcFfZvYyl4UVw=", "mtgPJbWdYbXyPUTzI6wvEFWY29ldO0qTeew00n4mhAE=", "SJm/7vdeW3HIwbURvsJiY6c7tAdXwHhVdT+E/sJCiMs=", "qpjmbaNGOgb1DBofsoQfrG0ly7VixaHRal2/lFysdoM=", "pWFHswOH54XKdA32uuyf+MqM67EkrbS3mNoOOWf82YY=", "9Z0akIavSZQfGwx+qt9uXOimpUzrQUDuBG4WqxrUICw=", "5tg9xsZfzP3cXtt2O75DOwbyMtJikod9h+ZbPM74fGI=", "5IX0hbRxcv4MfzwgxDV3FdWPmsCJk++fDlfjia6J5FM=", "JudKhBfUc6ZLff0dbtidJ1/UlyM2L1U1kpxAvQtZyg0=", "NSuKPSrhPDg3xoCPz74qzkB8LWy1aV46KTWus0HJYzQ=", "7TfDCaMWgEwSJEZd/e33b24919rF4IDJLmbqNNRNhZs=", "0HfdxDt/zGugZLIuHasrdLEW9s8OaTykSSqBEDFQXdw=", "SndbMKVtcTenAkwi2JBfGzD+mhexp1qJbRIY+A1JRIU=", "xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="], "checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n2492518467\nawloFJVfyHMqfE+rbaHW2Mp7PavF/IS4w//k3Bv1C78=\n\n— rekor.sigstore.dev wNI9ajBFAiEApxCQggGWLv8Cmhcsx8LZolQIvjh7A7Eh8OZV7BDwSAwCICbn6IHKRILF3Hi7zWFRfReKtcfGL3B/tRofJY6J0p9o\n"}}, "canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiIyM2Y4MmI0MTRhNjQyN2RmMGIzYmQ4MjI2ZWY1YzJlNDU0YWExYThhMTNlNTAzNzRiMDQzZGViNmQwODljNDBhIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FVUNJRjMxeVJLRGg5R2RJM3VMR0xSV1ZoRlM3WFFHRk83bjdna05tNmx0clNhZEFpRUF4RS85cnFlSHl1N2tkUW4wZ21oZlFzcXFXblFsSTVzaUs1MkFtNWtNMUtRPSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaFVWRU5EUW5STFowRjNTVUpCWjBsVldUZEhhVFJwY21wMlF6TXJZVU5ZWWs5cFpuZFJSWE55Y0hRNGQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDlFU1ROTlJHTjZUa1JSTWxkb1kwNU5hbGwzVDBSSk0wMUVZekJPUkZFeVYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZqWkhKRlFWZzNRbWxSZDJWSVVXbE9Ua3hWWTJKelQxVTVMMDVETjNaelJVNHJhMllLVW5GdVMzSnpLelJwV2t4b1pFWXJPUzlWTmtaNksyWlZUVXBDUkVnemVuZzNaSFk1YW5obE16ZG5hbloxT0dadWRHRlBRMEptUlhkbloxaDBUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlZuZDJoMUNsSXlkU3Q1WlZkTk1HWlNVMUo2VG0xbU5ubFNWVFV3ZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJGM1dVUldVakJTUVZGSUwwSkhSWGRZTkZwa1lVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKb01Wb3laSEJpYldSdFdWZE9iQXBNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU1rb3hZVmQ0YTB4dWJHaGlWM2hCQ21OdFZtMWplVGx2V2xkR2EyTjVPWFJaVjJ4MVRVUnJSME5wYzBkQlVWRkNaemM0ZDBGUlJVVkxNbWd3WkVoQ2VrOXBPSFprUnpseVdsYzBkVmxYVGpBS1lWYzVkV041Tlc1aFdGSnZaRmRLTVdNeVZubFpNamwxWkVkV2RXUkROV3BpTWpCM1NIZFpTMHQzV1VKQ1FVZEVkbnBCUWtGblVWSmtNamw1WVRKYWN3cGlNMlJtV2tkc2VtTkhSakJaTW1kM1RtZFpTMHQzV1VKQ1FVZEVkbnBCUWtGM1VXOVpWMUpyV21wUk0wNUVSbTFaVjFwcFRsUldhVTVIVFhoTlJFWnBDazFVVlRWUFJGWnJXbTFHYkZwWFJUTlplbVJxVFcxWmVsbFVRVlJDWjI5eVFtZEZSVUZaVHk5TlFVVkZRa0ZXUTJSWGJITmFSRUZ5UW1kdmNrSm5SVVVLUVZsUEwwMUJSVVpDUWpGdlpGZGtibUZYTlc1YWJVWnFXbE01Y2xwWVNuVmFWM2g2VEZkT2RtSlhNVEZpYld3d1pWUkJaRUpuYjNKQ1owVkZRVmxQTHdwTlFVVkhRa0U1ZVZwWFducE1NbWhzV1ZkU2Vrd3lNV2hoVnpSM1QzZFpTMHQzV1VKQ1FVZEVkbnBCUWtOQlVYUkVRM1J2WkVoU2QyTjZiM1pNTTFKMkNtRXlWblZNYlVacVpFZHNkbUp1VFhWYU1td3dZVWhXYVdSWVRteGpiVTUyWW01U2JHSnVVWFZaTWpsMFRVY3dSME5wYzBkQlVWRkNaemM0ZDBGUmEwVUtXSGQ0WkdGSVVqQmpTRTAyVEhrNWJtRllVbTlrVjBsMVdUSTVkRXd5YURGYU1tUndZbTFrYlZsWFRteE1NblJzWTIwMWJHSklUWFJaTWpsMFlsaFdkUXBoV0ZJMVRIazFibUZZVW05a1YwbDJaREk1ZVdFeVduTmlNMlI2VERKS01XRlhlR3RNYm14b1lsZDRRV050Vm0xamVUbHZXbGRHYTJONU9YUlpWMngxQ2sxRVowZERhWE5IUVZGUlFtYzNPSGRCVVc5RlMyZDNiMWxYVW10YWFsRXpUa1JHYlZsWFdtbE9WRlpwVGtkTmVFMUVSbWxOVkZVMVQwUldhMXB0Um13S1dsZEZNMWw2WkdwTmJWbDZXVlJCWWtKbmIzSkNaMFZGUVZsUEwwMUJSVXhDUVRCTlF6Tk9iR0pIV1hSaFJ6bDZaRWRXYTAxRlFVZERhWE5IUVZGUlFncG5OemgzUVZGM1JVMW5kM2RoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlUxRVowZERhWE5IUVZGUlFtYzNPSGRCVVRCRlMyZDNiMWxYVW10YWFsRXpUa1JHYlZsWFdtbE9WRlpwVGtkTmVFMUVSbWtLVFZSVk5VOUVWbXRhYlVac1dsZEZNMWw2WkdwTmJWbDZXVlJCWmtKbmIzSkNaMFZGUVZsUEwwMUJSVTlDUWtWTlJETktiRnB1VFhaaFIxWm9Xa2hOZGdwaVYwWndZbXBCWVVKbmIzSkNaMFZGUVZsUEwwMUJSVkJDUVhkTlEycEZkMDU2UlRCT2VsVXhUV3ByZDB4bldVdExkMWxDUWtGSFJIWjZRVUpGUVZGbkNrUkNOVzlrU0ZKM1kzcHZka3d5WkhCa1IyZ3hXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWM1IwRlpTMHQzV1VKQ1FVZEVkbnBCUWtWUlVVc0tSRUZuZVU1VVkzbE5SR013VFhwQ2RFSm5iM0pDWjBWRlFWbFBMMDFCUlZOQ1JqaE5XRmRvTUdSSVFucFBhVGgyV2pKc01HRklWbWxNYlU1MllsTTVid3BrVjJSdVlWYzFibHB0Um1wYVV6bHlXbGhLZFZwWGVIcE1WMDUyWWxjeE1XSnRiREJsVXpoMVdqSnNNR0ZJVm1sTU0yUjJZMjEwYldKSE9UTmplVGxwQ21SWGJITmFRelUxV1ZjeGMxRklTbXhhYmsxMllVZFdhRnBJVFhaaVYwWndZbXBCTkVKbmIzSkNaMFZGUVZsUEwwMUJSVlJDUTI5TlMwZEdhMXBIV1RBS1RucFJlRnB0Um0xWmFsVXhXV3BTYWsxVVFYaFpha1V4VDFSbk1WcEhXbWhhVjFab1RqSk5NMWw2U20xTk1rVjNTVkZaUzB0M1dVSkNRVWRFZG5wQlFncEdRVkZVUkVKR00ySXpTbkphYlhoMlpERTVhMkZZVG5kWldGSnFZVVJDYTBKbmIzSkNaMFZGUVZsUEwwMUJSVlpDUmxsTlZrZG9NR1JJUW5wUGFUaDJDbG95YkRCaFNGWnBURzFPZG1KVE9XOWtWMlJ1WVZjMWJscHRSbXBhVXpseVdsaEtkVnBYZUhwTVYwNTJZbGN4TVdKdGJEQmxVemxvV1ROU2NHSXlOWG9LVEROS01XSnVUWFpOZWsxM1RrUlZNRTFVUlROTlJGRjJXVmhTTUZwWE1YZGtTRTEyVFZSQlYwSm5iM0pDWjBWRlFWbFBMMDFCUlZkQ1FXZE5RbTVDTVFwWmJYaHdXWHBDUjBKbmIzSkNaMFZGUVZsUEwwMUJSVmxDUkdkTlRtNUtiR05IT0RaaFNGWnVXakpzZFZveVdtaFpNbFYyWVRKV2VXSnRWbk5qZVRGcUNtSXlNWFJrVnpWd1pFaHJObU50Vm0xUGJrcHNXbTVOZG1GSFZtaGFTRTEyWWxkR2NHSnFRMEpwZDFsTFMzZFpRa0pCU0ZkbFVVbEZRV2RTT1VKSWMwRUtaVkZDTTBGT01EbE5SM0pIZUhoRmVWbDRhMlZJU214dVRuZExhVk5zTmpRemFubDBMelJsUzJOdlFYWkxaVFpQUVVGQlFtOUZTV3RwZFRCQlFVRlJSQXBCUldkM1VtZEphRUZOVEZrMVozaFljR0ZhZUVoelVXZDRhbTlaUlM5eU9VVlZSakJJWW1KUWJHeHJlSFJqTlZCUk9FVnhRV2xGUVhaSGFVRjZjVlJ3Q2toVmVtSnBhRko1U1d4d1pWSTRUVzluYTJ0SVREWjBielV4Um1wSU0zVkpSakp2ZDBObldVbExiMXBKZW1vd1JVRjNUVVJoVVVGM1dtZEplRUZMVTBVS1FpOXZLemc0UjFOaU9FUlNlRmQ0V1daMk1HWnNiVGRJVUhadVFuWnBUa1Y1YTI4cmN6aEJXa3RMT1M5RE5GWk9iQzl1ZUVkQk5XNTJlbVZEZEdkSmVBcEJUMjF4UjBnMlVYTmtSUzh4T1RFME9XVlpTRTlyV0dWRllVOXFZMk5rVGxGVlNGbHlNRTlRUWtabVZYSnZZa2hyTVRsRVJFMXNjbHBGWmt4cmJXVllDbVpSUFQwS0xTMHRMUzFGVGtRZ1EwVlNWRWxHU1VOQlZFVXRMUzB0TFFvPSJ9fX19"}], "timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyDADAgEAMIICvwYJKoZIhvcNAQcCoIICsDCCAqwCAQMxDTALBglghkgBZQMEAgEwgbcGCyqGSIb3DQEJEAEEoIGnBIGkMIGhAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgue39u5hMdK6JopXtRU6eiFDItpcImihfXEQSDtZKnAoCFCNudCxymDZXokmAu2D/3lmyRwf4GA8yMDI2MDgyNzA3MzQ0NlowAwIBAaAypDAwLjEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MRUwEwYDVQQDEwxzaWdzdG9yZS10c2GgADGCAdowggHWAgEBMFEwOTEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MSAwHgYDVQQDExdzaWdzdG9yZS10c2Etc2VsZnNpZ25lZAIUOhNULwyQYe68wUMvy4qOiyojiwwwCwYJYIZIAWUDBAIBoIH8MBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAcBgkqhkiG9w0BCQUxDxcNMjYwODI3MDczNDQ2WjAvBgkqhkiG9w0BCQQxIgQgB34wCwV7/AAe7C9cWkNdYID4WIYhgWnkc+drytARt+UwgY4GCyqGSIb3DQEJEAIvMX8wfTB7MHkEIIX5J7wHq2LKw7RDVsEO/IGyxog/2nq55thw2dE6zQW3MFUwPaQ7MDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAoGCCqGSM49BAMCBGYwZAIwCnbhgMHgcIUEssRh1QjrTVf8rErKT9DMd+Q5Px/1934BGrxDHFyxbMe+0K0vte50AjAjzWFmVAFRyKqNZCBkJVZjUMwf9wkLNAOmw6SmIWxXxYl+MYNcgrOaVfdQ+HgqhKY="}]}}, "messageSignature":{"messageDigest":{"algorithm":"SHA2_256", "digest":"I/grQUpkJ98LO9gibvXC5FSqGooT5QN0sEPettCJxAo="}, "signature":"MEUCIF31yRKDh9GdI3uLGLRWVhFS7XQGFO7n7gkNm6ltrSadAiEAxE/9rqeHyu7kdQn0gmhfQsqqWnQlI5siK52Am5kM1KQ="}}
build/torch213-cxx11-rocm72-x86_64-linux/paged_attention/__init__.py DELETED
@@ -1,26 +0,0 @@
1
- import ctypes
2
- import importlib.util
3
- import sys
4
- from pathlib import Path
5
- from types import ModuleType
6
-
7
-
8
- def _import_from_path(file_path: Path) -> ModuleType:
9
- # We cannot use the module name as-is, after adding it to `sys.modules`,
10
- # it would also be used for other imports. So, we make a module name that
11
- # depends on the path for it to be unique using the hex-encoded hash of
12
- # the path.
13
- path_hash = "{:x}".format(ctypes.c_size_t(hash(file_path.absolute())).value)
14
- module_name = path_hash
15
- spec = importlib.util.spec_from_file_location(module_name, file_path)
16
- if spec is None:
17
- raise ImportError(f"Cannot load spec for {module_name} from {file_path}")
18
- module = importlib.util.module_from_spec(spec)
19
- if module is None:
20
- raise ImportError(f"Cannot load module {module_name} from spec")
21
- sys.modules[module_name] = module
22
- spec.loader.exec_module(module) # type: ignore
23
- return module
24
-
25
-
26
- globals().update(vars(_import_from_path(Path(__file__).parent.parent / "__init__.py")))
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
build/torch214-cxx11-rocm72-x86_64-linux/__init__.py ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from ._custom_ops import (
2
+ convert_fp8,
3
+ copy_blocks,
4
+ paged_attention_v1,
5
+ paged_attention_v2,
6
+ reshape_and_cache,
7
+ reshape_and_cache_flash,
8
+ swap_blocks,
9
+ )
10
+ from ._ops import ops
11
+
12
+ __all__ = [
13
+ "convert_fp8",
14
+ "copy_blocks",
15
+ "ops",
16
+ "paged_attention_v1",
17
+ "paged_attention_v2",
18
+ "reshape_and_cache",
19
+ "reshape_and_cache_flash",
20
+ "swap_blocks",
21
+ ]
build/torch214-cxx11-rocm72-x86_64-linux/_custom_ops.py ADDED
@@ -0,0 +1,173 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from typing import List, Optional
2
+
3
+ import torch
4
+
5
+ from ._ops import ops
6
+
7
+
8
+ # page attention ops
9
+ def paged_attention_v1(
10
+ out: torch.Tensor,
11
+ query: torch.Tensor,
12
+ key_cache: torch.Tensor,
13
+ value_cache: torch.Tensor,
14
+ num_kv_heads: int,
15
+ scale: float,
16
+ block_tables: torch.Tensor,
17
+ seq_lens: torch.Tensor,
18
+ block_size: int,
19
+ max_seq_len: int,
20
+ alibi_slopes: Optional[torch.Tensor],
21
+ kv_cache_dtype: str,
22
+ k_scale: float,
23
+ v_scale: float,
24
+ tp_rank: int = 0,
25
+ blocksparse_local_blocks: int = 0,
26
+ blocksparse_vert_stride: int = 0,
27
+ blocksparse_block_size: int = 64,
28
+ blocksparse_head_sliding_step: int = 0,
29
+ ) -> None:
30
+ ops.paged_attention_v1(
31
+ out,
32
+ query,
33
+ key_cache,
34
+ value_cache,
35
+ num_kv_heads,
36
+ scale,
37
+ block_tables,
38
+ seq_lens,
39
+ block_size,
40
+ max_seq_len,
41
+ alibi_slopes,
42
+ kv_cache_dtype,
43
+ k_scale,
44
+ v_scale,
45
+ tp_rank,
46
+ blocksparse_local_blocks,
47
+ blocksparse_vert_stride,
48
+ blocksparse_block_size,
49
+ blocksparse_head_sliding_step,
50
+ )
51
+
52
+
53
+ def paged_attention_v2(
54
+ out: torch.Tensor,
55
+ exp_sum: torch.Tensor,
56
+ max_logits: torch.Tensor,
57
+ tmp_out: torch.Tensor,
58
+ query: torch.Tensor,
59
+ key_cache: torch.Tensor,
60
+ value_cache: torch.Tensor,
61
+ num_kv_heads: int,
62
+ scale: float,
63
+ block_tables: torch.Tensor,
64
+ seq_lens: torch.Tensor,
65
+ block_size: int,
66
+ max_seq_len: int,
67
+ alibi_slopes: Optional[torch.Tensor],
68
+ kv_cache_dtype: str,
69
+ k_scale: float,
70
+ v_scale: float,
71
+ tp_rank: int = 0,
72
+ blocksparse_local_blocks: int = 0,
73
+ blocksparse_vert_stride: int = 0,
74
+ blocksparse_block_size: int = 64,
75
+ blocksparse_head_sliding_step: int = 0,
76
+ ) -> None:
77
+ ops.paged_attention_v2(
78
+ out,
79
+ exp_sum,
80
+ max_logits,
81
+ tmp_out,
82
+ query,
83
+ key_cache,
84
+ value_cache,
85
+ num_kv_heads,
86
+ scale,
87
+ block_tables,
88
+ seq_lens,
89
+ block_size,
90
+ max_seq_len,
91
+ alibi_slopes,
92
+ kv_cache_dtype,
93
+ k_scale,
94
+ v_scale,
95
+ tp_rank,
96
+ blocksparse_local_blocks,
97
+ blocksparse_vert_stride,
98
+ blocksparse_block_size,
99
+ blocksparse_head_sliding_step,
100
+ )
101
+
102
+
103
+ def reshape_and_cache(
104
+ key: torch.Tensor,
105
+ value: torch.Tensor,
106
+ key_cache: torch.Tensor,
107
+ value_cache: torch.Tensor,
108
+ slot_mapping: torch.Tensor,
109
+ kv_cache_dtype: str,
110
+ k_scale: float,
111
+ v_scale: float,
112
+ ) -> None:
113
+ ops.reshape_and_cache(
114
+ key,
115
+ value,
116
+ key_cache,
117
+ value_cache,
118
+ slot_mapping,
119
+ kv_cache_dtype,
120
+ k_scale,
121
+ v_scale,
122
+ )
123
+
124
+
125
+ def reshape_and_cache_flash(
126
+ key: torch.Tensor,
127
+ value: torch.Tensor,
128
+ key_cache: torch.Tensor,
129
+ value_cache: torch.Tensor,
130
+ slot_mapping: torch.Tensor,
131
+ kv_cache_dtype: str,
132
+ k_scale: torch.Tensor,
133
+ v_scale: torch.Tensor,
134
+ ) -> None:
135
+ ops.reshape_and_cache_flash(
136
+ key,
137
+ value,
138
+ key_cache,
139
+ value_cache,
140
+ slot_mapping,
141
+ kv_cache_dtype,
142
+ k_scale,
143
+ v_scale,
144
+ )
145
+
146
+
147
+ def copy_blocks(
148
+ key_caches: List[torch.Tensor],
149
+ value_caches: List[torch.Tensor],
150
+ block_mapping: torch.Tensor,
151
+ ) -> None:
152
+ ops.copy_blocks(key_caches, value_caches, block_mapping)
153
+
154
+
155
+ def swap_blocks(
156
+ src: torch.Tensor, dst: torch.Tensor, block_mapping: torch.Tensor
157
+ ) -> None:
158
+ ops.swap_blocks(src, dst, block_mapping)
159
+
160
+
161
+ def convert_fp8(
162
+ output: torch.Tensor, input: torch.Tensor, scale: float = 1.0, kv_dtype: str = "fp8"
163
+ ) -> None:
164
+ ops.convert_fp8(output, input, scale, kv_dtype)
165
+
166
+
167
+ __all__ = [
168
+ "convert_fp8",
169
+ "paged_attention_v1",
170
+ "paged_attention_v2",
171
+ "reshape_and_cache",
172
+ "copy_blocks",
173
+ ]
build/torch214-cxx11-rocm72-x86_64-linux/_ops.py ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ import torch
2
+ from . import _paged_attention_rocm_addf474
3
+ ops = torch.ops._paged_attention_rocm_addf474
4
+
5
+ def add_op_namespace_prefix(op_name: str):
6
+ """
7
+ Prefix op by namespace.
8
+ """
9
+ return f"_paged_attention_rocm_addf474::{op_name}"
build/torch214-cxx11-rocm72-x86_64-linux/_paged_attention_rocm_addf474.abi3.so ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:be51f5a91261b06f15f637174214ba0e6ad61821573420eca8024c8952946528
3
+ size 54807832
build/torch214-cxx11-rocm72-x86_64-linux/metadata.json ADDED
@@ -0,0 +1,41 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "paged-attention",
3
+ "id": "_paged_attention_rocm_addf474",
4
+ "version": 1,
5
+ "license": "Apache-2.0",
6
+ "python-depends": [],
7
+ "kernel-depends": [],
8
+ "backend": {
9
+ "type": "rocm",
10
+ "archs": [
11
+ "gfx1030",
12
+ "gfx1100",
13
+ "gfx1101",
14
+ "gfx906",
15
+ "gfx908",
16
+ "gfx90a",
17
+ "gfx942"
18
+ ]
19
+ },
20
+ "digest": {
21
+ "algorithm": "sha256",
22
+ "files": {
23
+ "__init__.py": "oes6jQj02wGGtnJVomIE7ZJr2qnJmOm6CWurue5Vf6w=",
24
+ "_custom_ops.py": "tnC6OR7TPhMV+tt8MyUyIH2gDIdxBzHT+1z1NUhA9EE=",
25
+ "_ops.py": "xXa2NPhR4Ged5ClRhCjr1VLevF56KY0pVM4TumQRwJM=",
26
+ "_paged_attention_rocm_addf474.abi3.so": "vlH1qRJhsG8V9jcXQhS6DmrWGCFXNCDsqAJMiVKUZSg=",
27
+ "platforms.py": "NeAhENqA8yXHgy3EfkYP1Bkx1n6aStkExV9py7Jvdiw="
28
+ }
29
+ },
30
+ "provenance": {
31
+ "kernel-builder": {
32
+ "version": "0.17.0-dev0",
33
+ "commit": "081dcd473f8eca27226eef1f9c47c45b86c756b5",
34
+ "dirty": false
35
+ },
36
+ "kernel": {
37
+ "commit": "addf4741fafb55b4c101b15985dfaeea7c7c2f3a",
38
+ "dirty": false
39
+ }
40
+ }
41
+ }
build/torch214-cxx11-rocm72-x86_64-linux/metadata.json.sigstore ADDED
@@ -0,0 +1 @@
 
 
1
+ {"mediaType":"application/vnd.dev.sigstore.bundle.v0.3+json", "verificationMaterial":{"certificate":{"rawBytes":"MIIHTDCCBtGgAwIBAgIUNe4Ba9wm70UTlX/LlOj7M6wDr5IwCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwODI3MDczNDQ5WhcNMjYwODI3MDc0NDQ5WjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAENKBVS8/7TGo3J3ym4gkf61nivCnuG16S/0u74JhtUiejwWWVsTpGRZuCsgIYarQmF5ejgwSIZNhf5qO7U4tbeqOCBfAwggXsMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUI4x6587DAfbokpwRAHnmJdxqzewwHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wawYDVR0RAQH/BGEwX4ZdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDkGCisGAQQBg78wAQEEK2h0dHBzOi8vdG9rZW4uYWN0aW9ucy5naXRodWJ1c2VyY29udGVudC5jb20wHwYKKwYBBAGDvzABAgQRd29ya2Zsb3dfZGlzcGF0Y2gwNgYKKwYBBAGDvzABAwQoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTATBgorBgEEAYO/MAEEBAVCdWlsZDArBgorBgEEAYO/MAEFBB1odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eTAdBgorBgEEAYO/MAEGBA9yZWZzL2hlYWRzL21haW4wOwYKKwYBBAGDvzABCAQtDCtodHRwczovL3Rva2VuLmFjdGlvbnMuZ2l0aHVidXNlcmNvbnRlbnQuY29tMG0GCisGAQQBg78wAQkEXwxdaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5Ly5naXRodWIvd29ya2Zsb3dzL2J1aWxkLnlhbWxAcmVmcy9oZWFkcy9tYWluMDgGCisGAQQBg78wAQoEKgwoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTAbBgorBgEEAYO/MAELBA0MC3NlbGYtaG9zdGVkMEAGCisGAQQBg78wAQwEMgwwaHR0cHM6Ly9naXRodWIuY29tL2h1Z2dpbmdmYWNlL2tlcm5lbHMtY29tbXVuaXR5MDgGCisGAQQBg78wAQ0EKgwoYWRkZjQ3NDFmYWZiNTViNGMxMDFiMTU5ODVkZmFlZWE3YzdjMmYzYTAfBgorBgEEAYO/MAEOBBEMD3JlZnMvaGVhZHMvbWFpbjAaBgorBgEEAYO/MAEPBAwMCjEwNzE0NzU1MjkwLgYKKwYBBAGDvzABEAQgDB5odHRwczovL2dpdGh1Yi5jb20vaHVnZ2luZ2ZhY2UwGAYKKwYBBAGDvzABEQQKDAgyNTcyMDc0MzBtBgorBgEEAYO/MAESBF8MXWh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS8uZ2l0aHViL3dvcmtmbG93cy9idWlsZC55YW1sQHJlZnMvaGVhZHMvbWFpbjA4BgorBgEEAYO/MAETBCoMKGFkZGY0NzQxZmFmYjU1YjRjMTAxYjE1OTg1ZGZhZWVhN2M3YzJmM2EwIQYKKwYBBAGDvzABFAQTDBF3b3JrZmxvd19kaXNwYXRjaDBkBgorBgEEAYO/MAEVBFYMVGh0dHBzOi8vZ2l0aHViLmNvbS9odWdnaW5nZmFjZS9rZXJuZWxzLWNvbW11bml0eS9hY3Rpb25zL3J1bnMvMzMwNDU0MTE3MDQvYXR0ZW1wdHMvMTAWBgorBgEEAYO/MAEWBAgMBnB1YmxpYzBGBgorBgEEAYO/MAEYBDgMNnJlcG86aHVnZ2luZ2ZhY2Uva2VybmVscy1jb21tdW5pdHk6cmVmOnJlZnMvaGVhZHMvbWFpbjCBigYKKwYBBAHWeQIEAgR8BHoAeAB2AN09MGrGxxEyYxkeHJlnNwKiSl643jyt/4eKcoAvKe6OAAABoEIkl34AAAQDAEcwRQIgerHw835U+xmb1yv5vGBqzEoqFuPnpBWbSV3P5aU3cwgCIQCEcecv+DA2X1Jwb88RDsO9f8GFF0ZtT6noKFLIYx1wPDAKBggqhkjOPQQDAwNpADBmAjEAg3x22xlba56KC4pApwj5R3nbwyTOeGLy9B6AIIuudXe4WvTtAmFNVZ7k0qby8ZPcAjEAvJ+5eqTD8aO8A24Fyj9TuK2AXV3Rb6BOpZi0Qsc/5x70G/YugQHEjzdAP6H9KU+C"}, "tlogEntries":[{"logIndex":"2614423685", "logId":{"keyId":"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0="}, "kindVersion":{"kind":"hashedrekord", "version":"0.0.1"}, "integratedTime":"1787816091", "inclusionPromise":{"signedEntryTimestamp":"MEUCIQCL3e5UfGFKENV/P4orI4gDVcKHI4e0wje5Gaal4vZ8zgIgNFOdLYwk00zSzs7DQmEwq0YqxMTVp8WnGoWotg61A8M="}, "inclusionProof":{"logIndex":"2492519423", "rootHash":"YCP3aQpTMRXMy0ExQc5Q7ao2fHzFtR9kgODiRczCRtk=", "treeSize":"2492519598", "hashes":["Kr9aVOb0PI+fBx70XyXnUdPMNsGH7q909qbM/livnvo=", "tg3v+gOqhyoDnbALAgzxzFE+WqtjXXIZtxO3ZfO+PbU=", "Cwbl3wo6nJNZRY7Bb5jCUral0UEUcDd+x6wChZLhMMk=", "7kMH85KThLy33dqtO44co4MqIgqha+fuTk2okLF3/c0=", "/oE0vBHgp1gUYsXsdBMGafA3jQVqUCW6mKHqE0QVomQ=", "ug2bJSA3RQfdbp9BKHLANvJyPN7wZ3Qd0xYcl8wcy4E=", "REadG1ZqTVTrBTnO/aODane/AtuBEXq7Byb07IcWgFs=", "QbXL7hBnSftFgFFliCuPg4H2smKHGqHMFghM5lojPas=", "/vbfgqaoyZAR9lB+wtvpio3R6T6ULrrzCFTnA6xgahg=", "R9Lq9q3fk0Ls3NERLRGfyqxVA4uIMg3vuVm3uaREddM=", "1phwMG6YSSdc76MqOezLDuSFrLxjWbQ9qkSY0E5j/sg=", "pwL7Du+Yzjqps5vk6xdGBs1lsfVHTUIuAfkC/6DDbx4=", "5IX0hbRxcv4MfzwgxDV3FdWPmsCJk++fDlfjia6J5FM=", "JudKhBfUc6ZLff0dbtidJ1/UlyM2L1U1kpxAvQtZyg0=", "NSuKPSrhPDg3xoCPz74qzkB8LWy1aV46KTWus0HJYzQ=", "7TfDCaMWgEwSJEZd/e33b24919rF4IDJLmbqNNRNhZs=", "0HfdxDt/zGugZLIuHasrdLEW9s8OaTykSSqBEDFQXdw=", "SndbMKVtcTenAkwi2JBfGzD+mhexp1qJbRIY+A1JRIU=", "xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY="], "checkpoint":{"envelope":"rekor.sigstore.dev - 1193050959916656506\n2492519598\nYCP3aQpTMRXMy0ExQc5Q7ao2fHzFtR9kgODiRczCRtk=\n\n— rekor.sigstore.dev wNI9ajBFAiEAykjV7sPAS4nOK/RJLbNuE5uzgaKHTJUTuFy3FIiydKQCIEBt1rrflm09LekCtdpfS7guOulSU9uJhvhjfXIV/2wh\n"}}, "canonicalizedBody":"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJmZjU3MTYzMjM5NzFhYjY2ZTQ3ZmU0ZDIwNDgzMTkyYTkyMTY2MGExMjc0NGIzM2FhN2Y1ZjE2Y2Y3NzhlNGJhIn19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FWUNJUUNZS0duUkNCZ0dWQVUvcm1ZODNzSFlqRWk5RlNMN2dRcys4RGpRcVRzQ3NRSWhBTENQRERMbWRsaktIN1cxd2piLzh6dDM0R1NtSG9ZeUdhZGdWZ1BDc2t3VyIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVaFVSRU5EUW5SSFowRjNTVUpCWjBsVlRtVTBRbUU1ZDIwM01GVlViRmd2VEd4UGFqZE5ObmRFY2pWSmQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDlFU1ROTlJHTjZUa1JSTlZkb1kwNU5hbGwzVDBSSk0wMUVZekJPUkZFMVYycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZPUzBKV1V6Z3ZOMVJIYnpOS00zbHROR2RyWmpZeGJtbDJRMjUxUnpFMlV5OHdkVGNLTkVwb2RGVnBaV3AzVjFkV2MxUndSMUphZFVOelowbFpZWEpSYlVZMVpXcG5kMU5KV2s1b1pqVnhUemRWTkhSaVpYRlBRMEptUVhkbloxaHpUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlZKTkhnMkNqVTROMFJCWm1KdmEzQjNVa0ZJYm0xS1pIaHhlbVYzZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDJGM1dVUldVakJTUVZGSUwwSkhSWGRZTkZwa1lVaFNNR05JVFRaTWVUbHVZVmhTYjJSWFNYVlpNamwwVERKb01Wb3laSEJpYldSdFdWZE9iQXBNTW5Sc1kyMDFiR0pJVFhSWk1qbDBZbGhXZFdGWVVqVk1lVFZ1WVZoU2IyUlhTWFprTWpsNVlUSmFjMkl6WkhwTU1rb3hZVmQ0YTB4dWJHaGlWM2hCQ21OdFZtMWplVGx2V2xkR2EyTjVPWFJaVjJ4MVRVUnJSME5wYzBkQlVWRkNaemM0ZDBGUlJVVkxNbWd3WkVoQ2VrOXBPSFprUnpseVdsYzBkVmxYVGpBS1lWYzVkV041Tlc1aFdGSnZaRmRLTVdNeVZubFpNamwxWkVkV2RXUkROV3BpTWpCM1NIZFpTMHQzV1VKQ1FVZEVkbnBCUWtGblVWSmtNamw1WVRKYWN3cGlNMlJtV2tkc2VtTkhSakJaTW1kM1RtZFpTMHQzV1VKQ1FVZEVkbnBCUWtGM1VXOVpWMUpyV21wUk0wNUVSbTFaVjFwcFRsUldhVTVIVFhoTlJFWnBDazFVVlRWUFJGWnJXbTFHYkZwWFJUTlplbVJxVFcxWmVsbFVRVlJDWjI5eVFtZEZSVUZaVHk5TlFVVkZRa0ZXUTJSWGJITmFSRUZ5UW1kdmNrSm5SVVVLUVZsUEwwMUJSVVpDUWpGdlpGZGtibUZYTlc1YWJVWnFXbE01Y2xwWVNuVmFWM2g2VEZkT2RtSlhNVEZpYld3d1pWUkJaRUpuYjNKQ1owVkZRVmxQTHdwTlFVVkhRa0U1ZVZwWFducE1NbWhzV1ZkU2Vrd3lNV2hoVnpSM1QzZFpTMHQzV1VKQ1FVZEVkbnBCUWtOQlVYUkVRM1J2WkVoU2QyTjZiM1pNTTFKMkNtRXlWblZNYlVacVpFZHNkbUp1VFhWYU1td3dZVWhXYVdSWVRteGpiVTUyWW01U2JHSnVVWFZaTWpsMFRVY3dSME5wYzBkQlVWRkNaemM0ZDBGUmEwVUtXSGQ0WkdGSVVqQmpTRTAyVEhrNWJtRllVbTlrVjBsMVdUSTVkRXd5YURGYU1tUndZbTFrYlZsWFRteE1NblJzWTIwMWJHSklUWFJaTWpsMFlsaFdkUXBoV0ZJMVRIazFibUZZVW05a1YwbDJaREk1ZVdFeVduTmlNMlI2VERKS01XRlhlR3RNYm14b1lsZDRRV050Vm0xamVUbHZXbGRHYTJONU9YUlpWMngxQ2sxRVowZERhWE5IUVZGUlFtYzNPSGRCVVc5RlMyZDNiMWxYVW10YWFsRXpUa1JHYlZsWFdtbE9WRlpwVGtkTmVFMUVSbWxOVkZVMVQwUldhMXB0Um13S1dsZEZNMWw2WkdwTmJWbDZXVlJCWWtKbmIzSkNaMFZGUVZsUEwwMUJSVXhDUVRCTlF6Tk9iR0pIV1hSaFJ6bDZaRWRXYTAxRlFVZERhWE5IUVZGUlFncG5OemgzUVZGM1JVMW5kM2RoU0ZJd1kwaE5Oa3g1T1c1aFdGSnZaRmRKZFZreU9YUk1NbWd4V2pKa2NHSnRaRzFaVjA1c1RESjBiR050Tld4aVNFMTBDbGt5T1hSaVdGWjFZVmhTTlUxRVowZERhWE5IUVZGUlFtYzNPSGRCVVRCRlMyZDNiMWxYVW10YWFsRXpUa1JHYlZsWFdtbE9WRlpwVGtkTmVFMUVSbWtLVFZSVk5VOUVWbXRhYlVac1dsZEZNMWw2WkdwTmJWbDZXVlJCWmtKbmIzSkNaMFZGUVZsUEwwMUJSVTlDUWtWTlJETktiRnB1VFhaaFIxWm9Xa2hOZGdwaVYwWndZbXBCWVVKbmIzSkNaMFZGUVZsUEwwMUJSVkJDUVhkTlEycEZkMDU2UlRCT2VsVXhUV3ByZDB4bldVdExkMWxDUWtGSFJIWjZRVUpGUVZGbkNrUkNOVzlrU0ZKM1kzcHZka3d5WkhCa1IyZ3hXV2sxYW1JeU1IWmhTRlp1V2pKc2RWb3lXbWhaTWxWM1IwRlpTMHQzV1VKQ1FVZEVkbnBCUWtWUlVVc0tSRUZuZVU1VVkzbE5SR013VFhwQ2RFSm5iM0pDWjBWRlFWbFBMMDFCUlZOQ1JqaE5XRmRvTUdSSVFucFBhVGgyV2pKc01HRklWbWxNYlU1MllsTTVid3BrVjJSdVlWYzFibHB0Um1wYVV6bHlXbGhLZFZwWGVIcE1WMDUyWWxjeE1XSnRiREJsVXpoMVdqSnNNR0ZJVm1sTU0yUjJZMjEwYldKSE9UTmplVGxwQ21SWGJITmFRelUxV1ZjeGMxRklTbXhhYmsxMllVZFdhRnBJVFhaaVYwWndZbXBCTkVKbmIzSkNaMFZGUVZsUEwwMUJSVlJDUTI5TlMwZEdhMXBIV1RBS1RucFJlRnB0Um0xWmFsVXhXV3BTYWsxVVFYaFpha1V4VDFSbk1WcEhXbWhhVjFab1RqSk5NMWw2U20xTk1rVjNTVkZaUzB0M1dVSkNRVWRFZG5wQlFncEdRVkZVUkVKR00ySXpTbkphYlhoMlpERTVhMkZZVG5kWldGSnFZVVJDYTBKbmIzSkNaMFZGUVZsUEwwMUJSVlpDUmxsTlZrZG9NR1JJUW5wUGFUaDJDbG95YkRCaFNGWnBURzFPZG1KVE9XOWtWMlJ1WVZjMWJscHRSbXBhVXpseVdsaEtkVnBYZUhwTVYwNTJZbGN4TVdKdGJEQmxVemxvV1ROU2NHSXlOWG9LVEROS01XSnVUWFpOZWsxM1RrUlZNRTFVUlROTlJGRjJXVmhTTUZwWE1YZGtTRTEyVFZSQlYwSm5iM0pDWjBWRlFWbFBMMDFCUlZkQ1FXZE5RbTVDTVFwWmJYaHdXWHBDUjBKbmIzSkNaMFZGUVZsUEwwMUJSVmxDUkdkTlRtNUtiR05IT0RaaFNGWnVXakpzZFZveVdtaFpNbFYyWVRKV2VXSnRWbk5qZVRGcUNtSXlNWFJrVnpWd1pFaHJObU50Vm0xUGJrcHNXbTVOZG1GSFZtaGFTRTEyWWxkR2NHSnFRMEpwWjFsTFMzZFpRa0pCU0ZkbFVVbEZRV2RTT0VKSWIwRUtaVUZDTWtGT01EbE5SM0pIZUhoRmVWbDRhMlZJU214dVRuZExhVk5zTmpRemFubDBMelJsUzJOdlFYWkxaVFpQUVVGQlFtOUZTV3RzTXpSQlFVRlJSQXBCUldOM1VsRkpaMlZ5U0hjNE16VlZLM2h0WWpGNWRqVjJSMEp4ZWtWdmNVWjFVRzV3UWxkaVUxWXpVRFZoVlROamQyZERTVkZEUldObFkzWXJSRUV5Q2xneFNuZGlPRGhTUkhOUE9XWTRSMFpHTUZwMFZEWnViMHRHVEVsWmVERjNVRVJCUzBKblozRm9hMnBQVUZGUlJFRjNUbkJCUkVKdFFXcEZRV2N6ZURJS01uaHNZbUUxTmt0RE5IQkJjSGRxTlZJemJtSjNlVlJQWlVkTWVUbENOa0ZKU1hWMVpGaGxORmQyVkhSQmJVWk9WbG8zYXpCeFluazRXbEJqUVdwRlFRcDJTaXMxWlhGVVJEaGhUemhCTWpSR2VXbzVWSFZMTWtGWVZqTlNZalpDVDNCYWFUQlJjMk12TlhnM01FY3ZXWFZuVVVoRmFucGtRVkEyU0RsTFZTdERDaTB0TFMwdFJVNUVJRU5GVWxSSlJrbERRVlJGTFMwdExTMEsifX19fQ=="}], "timestampVerificationData":{"rfc3161Timestamps":[{"signedTimestamp":"MIICyjADAgEAMIICwQYJKoZIhvcNAQcCoIICsjCCAq4CAQMxDTALBglghkgBZQMEAgEwgbgGCyqGSIb3DQEJEAEEoIGoBIGlMIGiAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgb0wm9IvpY28v+QJOVVtR7rFPFB4v7SFwAMc/gIlgLg4CFQCvlHAVtJ58EbGcQ0LM01IyRXHOtBgPMjAyNjA4MjcwNzM0NDlaMAMCAQGgMqQwMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhoAAxggHbMIIB1wIBATBRMDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAsGCWCGSAFlAwQCAaCB/DAaBgkqhkiG9w0BCQMxDQYLKoZIhvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTI2MDgyNzA3MzQ0OVowLwYJKoZIhvcNAQkEMSIEINkBsTaGb2NWbVQR9EwPvs04mRwIrKyIjTzFpi6n1q/RMIGOBgsqhkiG9w0BCRACLzF/MH0wezB5BCCF+Se8B6tiysO0Q1bBDvyBssaIP9p6uebYcNnROs0FtzBVMD2kOzA5MRUwEwYDVQQKEwxzaWdzdG9yZS5kZXYxIDAeBgNVBAMTF3NpZ3N0b3JlLXRzYS1zZWxmc2lnbmVkAhQ6E1QvDJBh7rzBQy/Lio6LKiOLDDAKBggqhkjOPQQDAgRnMGUCMBM/RNNuZljE96Me1C2Ax6ncYVP3O7UbN0YzHBkqLpCjTrQVRcTxdioFEzIuXN6MLAIxAO9zhszg9Wml3lhHNpsgbVw8DUbH3VnAH2c4cZ0/L7b+gK+E39xEodnVst+TUA9wSQ=="}]}}, "messageSignature":{"messageDigest":{"algorithm":"SHA2_256", "digest":"/1cWMjlxq2bkf+TSBIMZKpIWYKEnRLM6p/XxbPd45Lo="}, "signature":"MEYCIQCYKGnRCBgGVAU/rmY83sHYjEi9FSL7gQs+8DjQqTsCsQIhALCPDDLmdljKH7W1wjb/8zt34GSmHoYyGadgVgPCskwW"}}
build/torch214-cxx11-rocm72-x86_64-linux/platforms.py ADDED
@@ -0,0 +1,92 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ import random
3
+ from abc import ABC, abstractmethod
4
+ from functools import lru_cache, wraps
5
+ from typing import Callable, ParamSpec, TypeVar
6
+
7
+ import numpy as np
8
+ import torch
9
+
10
+ IS_ROCM = torch.version.hip is not None
11
+ IS_MPS = torch.backends.mps.is_available()
12
+
13
+
14
+ class Platform(ABC):
15
+ @classmethod
16
+ def seed_everything(cls, seed: int) -> None:
17
+ """
18
+ Set the seed of each random module.
19
+ `torch.manual_seed` will set seed on all devices.
20
+
21
+ Loosely based on: https://github.com/Lightning-AI/pytorch-lightning/blob/2.4.0/src/lightning/fabric/utilities/seed.py#L20
22
+ """
23
+ random.seed(seed)
24
+ np.random.seed(seed)
25
+ torch.manual_seed(seed)
26
+
27
+ @abstractmethod
28
+ def get_device_name(self, device_id: int = 0) -> str: ...
29
+
30
+ @abstractmethod
31
+ def is_cuda(self) -> bool: ...
32
+
33
+ @abstractmethod
34
+ def is_rocm(self) -> bool: ...
35
+
36
+ @abstractmethod
37
+ def is_mps(self) -> bool: ...
38
+
39
+
40
+ class CudaPlatform(Platform):
41
+ @classmethod
42
+ @lru_cache(maxsize=8)
43
+ def get_device_name(cls, device_id: int = 0) -> str:
44
+ return torch.cuda.get_device_name(0)
45
+
46
+ def is_cuda(self) -> bool:
47
+ return True
48
+
49
+ def is_rocm(self) -> bool:
50
+ return False
51
+
52
+ def is_mps(self) -> bool:
53
+ return False
54
+
55
+
56
+ class RocmPlatform(Platform):
57
+ @classmethod
58
+ @lru_cache(maxsize=8)
59
+ def get_device_name(cls, device_id: int = 0) -> str:
60
+ return torch.cuda.get_device_name(device_id)
61
+
62
+ def is_cuda(self) -> bool:
63
+ return False
64
+
65
+ def is_rocm(self) -> bool:
66
+ return True
67
+
68
+ def is_mps(self) -> bool:
69
+ return False
70
+
71
+
72
+ class MpsPlatform(Platform):
73
+ @classmethod
74
+ @lru_cache(maxsize=8)
75
+ def get_device_name(cls, device_id: int = 0) -> str:
76
+ return torch.cuda.get_device_name(device_id)
77
+
78
+ def is_cuda(self) -> bool:
79
+ return False
80
+
81
+ def is_rocm(self) -> bool:
82
+ return False
83
+
84
+ def is_mps(self) -> bool:
85
+ return True
86
+
87
+ current_platform = (
88
+ RocmPlatform() if IS_ROCM else
89
+ MpsPlatform() if IS_MPS else
90
+ CudaPlatform() if torch.cuda.is_available() else
91
+ None
92
+ )