SPDXVersion: SPDX-2.1 DataLicense: CC0-1.0 SPDXID: SPDXRef-DOCUMENT DocumentName: project DocumentNamespace: http://spdx.org/spdxdocs/spdx-v2.1-dc567c38-db50-4e27-a520-b0fceef7113b Creator: Person: Anonymous () Creator: Organization: Anonymous () Creator: Tool: reuse-6.1.0 Created: 2026-03-23T01:50:38Z CreatorComment: This document was created automatically using available reuse information consistent with REUSE. Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-aeb5c55db7befd710c9558884f55f995 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-0f9fc0bbc14a8d4cbb8e2a832ff41b69 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-18bdaad777cb654c8f011eb48c948e34 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-1822c4ce69826e23faa86a30c4ab97a9 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-a9c96610ca305defc58491d1f4059ce2 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-251d77087deba745f24c941029489bb6 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ec93bf0c98ce13538e1f3681fa4fac5b Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-87974d36412841e2ab99eca9ddb13918 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ee5ecb6b0be0f014e1ff70aa6c9e3fce Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ca78897e4b07f60db1fe8976157aafcd Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-bac53cf4a2bee956f056bd422c616c96 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-181454ee81be4d6bea93c9e11d23884e Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-17541a835854b1a2d4445be8f5b6bdf5 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-0f7a0e77e336032e24c7f3115d0ceb47 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-6bb7def5269c01e82481920e2ec7633a Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-9aaa74a6ea56e4f20624da18e0eba2e0 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-f0b0baaa4e012a414d305f62ac19ae53 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-4c8f643d48440d87bdae4b987176c4b4 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-29b4b5e22cde658106d87d9122e55276 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-aa3b8a7ce8a9eba7735181305f5d1a0e Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ac359c2e0b7eb4e05494a234463b6f28 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-802fa4dbd62537d26e3f9e75424719f2 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ae01c606649736310006d6ad573f6f92 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-eaf114149aabdce0a5b6a3aa5e246a26 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-8097f9c0a2bde87b0e84a17dc504ec18 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-dd61491985420812b875aae94b68e078 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-c28d9e8610cbb06df33f18c99853dd85 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-39897115d08a370a6902a0b4397ba538 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-45cf3c63393f8997898777551e667d86 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-c84b10153506af01c7795124e62dbfb2 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-d9865ffafc9acbeb01ea4573e23305a1 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-1c8192987ea9434d9358684af9682789 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-2aa9d1b4b02770ca77f173ec2a99a9d3 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-2984464b7eb9059c434200e04a8d6922 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-2a941fab3584a874c5f52fa543275a48 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-0dd1d1503cd0380e14f1a2e4f46ce2b1 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-59eb24ef5d4069b006160b99aea89404 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-a649b7e0fc5c9730bb8aa85be7a3ea96 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-9d0e88d27457dd77d43fd71e61a5dc35 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-2c08f4b992434260ae1afa72c1efe8a3 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-8e6be3181dd11782f37e1b32f5005099 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-a46b20b335692c2281aaf525739e61b1 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-d767f074c5e598aabb163dad17e17c97 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-7f254ebf47c063f023f8c594ec6c109d Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-9df6196b728b60ac5c0aec223a4a8b15 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-65277e94f0e5d9d77302d1c79d29e1ca Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-bca947230b298427d8bdbc9b05ca5521 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-2e4ee81fde77d7ac5d91d6889017a51a Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-5df0ccee6ad282dc2ce0906020069c1d Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-20c1e79cd3e684c44c867f3a58bb68af Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-905c70d3964f4259809a556f523cad7f Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-18731265a73e17a63950eeb8717ff040 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-609d72c48e96ef427c67246c94973db0 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-fb27d5c1ebe2eb0b4311ee699bae2074 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-36cdc5649ecec30654d24b2ab308bacc Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-fecfd31c06d78591460906194631c6a5 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-e6bf910b2782ebf6945ab9d2135abfe1 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-1eba4ca211386246c945738b9942aa47 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-dcf35d09e442875b3eda9e788da0966f Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-8f9c7b46db316cafa1f03b9f128055cf Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-cbc8d656983e363d96f455d48ad3d3e1 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-42cc96e96431ba591579a1880e2ce703 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-b48fba624f9d2a61a73b2e6cb36f792e Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ddb2742981c4ae5ffd81f4287064f264 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-d402b40235b42093e8c6cc1be2e6e7ef Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-40de071e36f61c9cdb5d66b75cbe148c Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-5e9250d23eb9fbb386b35c1329891a12 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ccc77740c9c29c7c4096b587ddfe535b Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-30b6c8f5567fceba4036aa3e971e1d46 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-5972ab8175e67ae28e89f64eac026da6 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-9d270bbd5788347ffbd87bb63293db65 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-8bb335f492270a73fc39756989b6ce35 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-2e02e0aa784a61a6b27f7e1e319f17b2 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-c4a36df27e451a6692ee9efe7dbb2867 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ede82fb672d6be12d249652dc8e3d5a6 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-3d5f208e542cb4735d1fe800a8d11197 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-08dff2112009b6bde2064f31ae5690da Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-57c5b995976d14b9ddd75508a1bdf204 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-414cd28036347083cefe801494e5122a Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ce0642515f769a5ed8d843743cfc3780 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-86e914d4c7e731c86e61a94d897e9948 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-a0875d89c71fc620ad8c646221edde99 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-24edcba840ced56acd11929cb662cd2f Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-edf5b4d66cbd98518db4ada6cf3ebcf9 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-acbe0fcb6aaa7afc88735fc4fc235ec3 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-4fd75716302f275775f971f087489b1e Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-b6e49f3b7d24cd47d2c81387990be07e Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-e3dba89bbc95b44d1496264748da37bb Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-8c4ba7ba4a766fd87c77942d7f84bb2c Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-6c2484df0067d15781a7d4a5e3ab1502 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-b93c8fdc3d029268d9cd5165408ef9f0 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ace85009117d302397e0bbf93eefd246 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-90982295bc16bf1b5f3c4dacea465940 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-716146e6042d93871940570990d23b19 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ac334da8d5413f6f7e2a1f3f38463b0f Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-fe41383acb4d028cd00901652b64c7d5 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-9746d2d825922bf339318caaa6b9ebec Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-22920c7423c2c9d4c5af88793a86b704 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-6fd0a3db6b7bd5143582334855087941 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-f34993717a11a0894e9ff87bf04663e3 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-43ef5c190092a8e461229c4d2693c0af Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-e5ea856419153c98871b52b4d8e90c03 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-b8521f6a83c5dd1fce6f6321e77027d6 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-297bdb91a76cd6ae755ee22423ba5280 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-587781e9c710d02f3e5c88558b200224 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-da0ee3b2fbb22c0f704cf18b5d000216 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-f2203910ebaebd8395051d5c83544851 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-b402b2d2daf7c39e4c61f49085573b83 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-32b72b09193a876c48e4f502edc8c719 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-7a06afbd21333ad1596c4fe08609fcab Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-1b7a495c8faff3074f47fe23bc64d655 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-5b944ea9af05773ea656a201b383186a Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-37137e8fd293adc3c261ffbbcc780699 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-b5cf7775e99c0dc1e2fd13b6d27c0fd5 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-176947f1bba713fd0ca18d3a145955aa Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-d09d20265efa6da13f36c02fa04f1ed6 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-a98716b3051e31c86c5c9146d28c9bc5 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-e4d04e4ba587602c62557cc6d73fcb2e Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-12f0400a5dc3f10751e1c4de5e92fcdb Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-5303915226c67b5f77cfe76a6f47a5e4 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-7cd9da690d1f0fe758b5cfdde35fe62e Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-2b643567249774ff3b0d75b084163f12 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-8bcc24f550a6580aadf8cd87fa73da33 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-0f3287c6efc584b0ed5cb936ae76b50a Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-de51530444bf2f1be0ff2d7cc6b8e154 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-b27eec33503a5bb00d7d80c263d2f289 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-f4650ac7f13621dba59d051562fc32bb Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-be322e5a42bcb6d370a7698225621837 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-97b2b6346945c10c82a18b511cfd7c11 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-fd5e8b3eb0626c07fde0a15375b469e5 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-1064aad8a597ce69f6cb6014b84b72df Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-bb4b31060f219de2d4e6117afad8ce88 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-67c72c4a0d303a260166537d2b256550 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-e7a7a71d60f2c5428a5169b9b77974f0 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-242d463298003a1db491e4181e14fb33 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-74ed08f3240c3b8b312f3b7b54d74a5c Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-ca177e9a5fe8a19c86849c4cb723c282 Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-7075558c6a7aac3712f69a440011254d Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-5403e8c5f2a56e8e8fc2034d564771ff Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-629433199b798784be0493118ba3671f Relationship: SPDXRef-DOCUMENT DESCRIBES SPDXRef-9d09d728fd715a87324b73c7701a5989 FileName: ./.cargo/config.toml SPDXID: SPDXRef-aeb5c55db7befd710c9558884f55f995 FileChecksum: SHA1: 5ff5320ddccadaf2a2ee1fa36efc0c21c3ce8972 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./.githooks/pre-commit SPDXID: SPDXRef-0f9fc0bbc14a8d4cbb8e2a832ff41b69 FileChecksum: SHA1: be66a5fbe24db7355ccca8d629582578216a510a LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./.github/CODEOWNERS SPDXID: SPDXRef-18bdaad777cb654c8f011eb48c948e34 FileChecksum: SHA1: f3728df076cacb63a1cc8ca1b2a5255401dca39f LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./.github/FUNDING.yml SPDXID: SPDXRef-1822c4ce69826e23faa86a30c4ab97a9 FileChecksum: SHA1: a2d3e67f9584e23af93dc4eb139135009cc8eed0 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./.github/ISSUE_TEMPLATE/bug_report.md SPDXID: SPDXRef-a9c96610ca305defc58491d1f4059ce2 FileChecksum: SHA1: 50ca8aad1c063db3f964c4623d89b37bcb23f7e2 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./.github/ISSUE_TEMPLATE/custom.md SPDXID: SPDXRef-251d77087deba745f24c941029489bb6 FileChecksum: SHA1: 84208538d48505ee8e49812cb336eb9882e08dc7 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./.github/ISSUE_TEMPLATE/feature_request.md SPDXID: SPDXRef-ec93bf0c98ce13538e1f3681fa4fac5b FileChecksum: SHA1: f6867a2f0417fe89a0f2008730ee19dd38422021 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./.github/dependabot.yml SPDXID: SPDXRef-87974d36412841e2ab99eca9ddb13918 FileChecksum: SHA1: 51ed3b0021251ace624f61de42eedfafdd520313 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./.github/workflows/reuse.yml SPDXID: SPDXRef-ee5ecb6b0be0f014e1ff70aa6c9e3fce FileChecksum: SHA1: ff39dc61467f6770fcd17a005558185b3baf4814 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: 2022 Free Software Foundation Europe e.V. FileName: ./.github/workflows/rust.yml SPDXID: SPDXRef-ca78897e4b07f60db1fe8976157aafcd FileChecksum: SHA1: d52e9a27cd7a160c2c6b2405a454148eb9b17910 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./.github/workflows/zizmor.yml SPDXID: SPDXRef-bac53cf4a2bee956f056bd422c616c96 FileChecksum: SHA1: 43a6e03976fcc108bca7f187b1f8376b52db0e50 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./.gitignore SPDXID: SPDXRef-181454ee81be4d6bea93c9e11d23884e FileChecksum: SHA1: b896250b38291fcb9e110515fc472b5ac018f9b4 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./.ignore SPDXID: SPDXRef-17541a835854b1a2d4445be8f5b6bdf5 FileChecksum: SHA1: 99eb01918240779ce444d85fe4bd432336221605 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2026 David Campbell FileName: ./.markdownlint.json SPDXID: SPDXRef-0f7a0e77e336032e24c7f3115d0ceb47 FileChecksum: SHA1: a30a64687daaced77b98ee229974fb2cd4342560 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./.vscode/settings.json SPDXID: SPDXRef-6bb7def5269c01e82481920e2ec7633a FileChecksum: SHA1: eab9517569c6e7a9441fc073f467e2aafdc7277f LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./CHANGELOG.md SPDXID: SPDXRef-9aaa74a6ea56e4f20624da18e0eba2e0 FileChecksum: SHA1: 19edb681a3931855ded1d5b9da1536a1a8938a42 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./CITATION.cff SPDXID: SPDXRef-f0b0baaa4e012a414d305f62ac19ae53 FileChecksum: SHA1: 6fc5a919ff45ac71208e6dc9b76c0eebff2d9bdb LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./CODE_OF_CONDUCT.md SPDXID: SPDXRef-4c8f643d48440d87bdae4b987176c4b4 FileChecksum: SHA1: b7828399265541286ebd56ee3c8edecf25b7b584 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-SA-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 Organization for Ethical Source FileName: ./CONTRIBUTING.md SPDXID: SPDXRef-29b4b5e22cde658106d87d9122e55276 FileChecksum: SHA1: f4893dd676ac6a7ee45afab1af69b3f2f514b6c1 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell Copyright and Licenses FileName: ./Cargo.lock SPDXID: SPDXRef-aa3b8a7ce8a9eba7735181305f5d1a0e FileChecksum: SHA1: 3b387407f9a28d6fd12bd7dbd6f810a52c6c644a LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./Cargo.toml SPDXID: SPDXRef-ac359c2e0b7eb4e05494a234463b6f28 FileChecksum: SHA1: c6fd411fc62aed77745c1f2cf87e8e7fe25ebf82 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./README.md SPDXID: SPDXRef-802fa4dbd62537d26e3f9e75424719f2 FileChecksum: SHA1: 21f57e9337b8f478c73e02945e19a33f508b8ab8 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell Copyright (C) 2025-2026 Developers of the hnefatafl-copenhagen project FileName: ./SECURITY.md SPDXID: SPDXRef-ae01c606649736310006d6ad573f6f92 FileChecksum: SHA1: d05ec7c9e650d811fe73c56cad7eadff1cd06a7b LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./assets/header.png SPDXID: SPDXRef-eaf114149aabdce0a5b6a3aa5e246a26 FileChecksum: SHA1: 05b746b51c06035b9beb1519bf83e8376a351ffa LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./assets/helmet.svg SPDXID: SPDXRef-8097f9c0a2bde87b0e84a17dc504ec18 FileChecksum: SHA1: 2214ac8837822384652382e5ecd15be94122fdee LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./assets/hnefatafl-individual-CLA.pdf SPDXID: SPDXRef-dd61491985420812b875aae94b68e078 FileChecksum: SHA1: ef9aedf0671a488eb0ad70691e392d75f59d73e5 LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 The Apache Software Foundation FileName: ./assets/hnefatafl-individual-CLA.tex SPDXID: SPDXRef-c28d9e8610cbb06df33f18c99853dd85 FileChecksum: SHA1: 76c957fdae4462bb78090d9caff963075447e4fd LicenseConcluded: NOASSERTION LicenseInfoInFile: Apache-2.0 FileCopyrightText: SPDX-FileCopyrightText: 2026 The Apache Software Foundation Copyright License. Subject to the terms and conditions of FileName: ./assets/king.png SPDXID: SPDXRef-39897115d08a370a6902a0b4397ba538 FileChecksum: SHA1: c826be4456a6a2aa57010adfccb8e9f8faab9bba LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./assets/king.svg SPDXID: SPDXRef-45cf3c63393f8997898777551e667d86 FileChecksum: SHA1: 05527b3d8190a577dd8b2d1d03da2b0932b272d6 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./benches/hnefatafl_rs.rs SPDXID: SPDXRef-c84b10153506af01c7795124e62dbfb2 FileChecksum: SHA1: 1f14897c498af3344b56a86c513525bc805e0d7b LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./documents/glicko.pdf SPDXID: SPDXRef-d9865ffafc9acbeb01ea4573e23305a1 FileChecksum: SHA1: e27b5e5642305afdfb93420fe956827ec035da15 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: 2016 Dr. Mark E Glickman FileName: ./documents/gtp2-spec-draft2.pdf SPDXID: SPDXRef-1c8192987ea9434d9358684af9682789 FileChecksum: SHA1: f7b8d9fba43f4202d2fc3fb0a7b8e0d00ddf17e9 LicenseConcluded: NOASSERTION LicenseInfoInFile: GFDL-1.1-only FileCopyrightText: SPDX-FileCopyrightText: 2002 Gunnar farnebäck FileName: ./html-client/index.html SPDXID: SPDXRef-2aa9d1b4b02770ca77f173ec2a99a9d3 FileChecksum: SHA1: 8ef58596100cd7a4e11e845b72854c0db84facd9 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./index.html SPDXID: SPDXRef-2984464b7eb9059c434200e04a8d6922 FileChecksum: SHA1: a273cd3dde676e54b8bed81ceb5536c299f40d1f LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./justfile SPDXID: SPDXRef-2a941fab3584a874c5f52fa543275a48 FileChecksum: SHA1: a86e27f8bb68e4d3e9fba0ea3d418ed281f45ed9 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./locales/app.toml SPDXID: SPDXRef-0dd1d1503cd0380e14f1a2e4f46ce2b1 FileChecksum: SHA1: 2cf62e238aabe305fdc4b057c99f13e5103db687 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./packages/AUR/PKGBUILD SPDXID: SPDXRef-59eb24ef5d4069b006160b99aea89404 FileChecksum: SHA1: 531c08c9b574cd0323832c3c436bf501cd787f1a LicenseConcluded: NOASSERTION LicenseInfoInFile: 0BSD FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/android.sh SPDXID: SPDXRef-a649b7e0fc5c9730bb8aa85be7a3ea96 FileChecksum: SHA1: 96fdaa662834d12cd7b3ef2d7a9d48bf16e36e4e LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/chocolatey/choco_1.ps1 SPDXID: SPDXRef-9d0e88d27457dd77d43fd71e61a5dc35 FileChecksum: SHA1: 53708ca94ee2d0d8a9b4a147ca65fc7bf1539a17 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/chocolatey/choco_2.ps1 SPDXID: SPDXRef-2c08f4b992434260ae1afa72c1efe8a3 FileChecksum: SHA1: 280869c9dac8d5c2ef42ff9d7cf7c5cec66465c0 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/chocolatey/helmet.ico SPDXID: SPDXRef-8e6be3181dd11782f37e1b32f5005099 FileChecksum: SHA1: ec57c05f0f5d10b2006fca3fdd063136fca5eb38 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/chocolatey/hnefatafl-client-installer.nsi SPDXID: SPDXRef-a46b20b335692c2281aaf525739e61b1 FileChecksum: SHA1: 0c3769ffed81a817fe2016860f7377d0276c7c93 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/chocolatey/hnefatafl-copenhagen/hnefatafl-copenhagen.nuspec SPDXID: SPDXRef-d767f074c5e598aabb163dad17e17c97 FileChecksum: SHA1: ef8d66e4b56ed15fdbe3d77ad1ea976992ca2b0e LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/chocolatey/hnefatafl-copenhagen/tools/VERIFICATION.txt SPDXID: SPDXRef-7f254ebf47c063f023f8c594ec6c109d FileChecksum: SHA1: 25ceeaab92b239578e0f07df6d1b9a0b9d9f0dc5 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/chocolatey/hnefatafl-copenhagen/tools/chocolateyinstall.ps1 SPDXID: SPDXRef-9df6196b728b60ac5c0aec223a4a8b15 FileChecksum: SHA1: 2db6e5ca0c543ba2db5f99e3a78c878cdfa3b796 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/chocolatey/hnefatafl-copenhagen/tools/chocolateyuninstall.ps1 SPDXID: SPDXRef-65277e94f0e5d9d77302d1c79d29e1ca FileChecksum: SHA1: 3f7fd1529866e97d0c0fae8f0c230db3d3eb7850 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/debian/changelog SPDXID: SPDXRef-bca947230b298427d8bdbc9b05ca5521 FileChecksum: SHA1: 1d4ebcd64b2330bacb51911b4b3e09fa809e5867 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/debian/deb.sh SPDXID: SPDXRef-2e4ee81fde77d7ac5d91d6889017a51a FileChecksum: SHA1: 67cef05be75603698b447f32a1bac83f6cc64c99 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/debian/generate-release.sh SPDXID: SPDXRef-5df0ccee6ad282dc2ce0906020069c1d FileChecksum: SHA1: e7caa88671cd8d1c4c1d51aaa46b51ef6c64a30a LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/flathub/cargo-sources.json SPDXID: SPDXRef-20c1e79cd3e684c44c867f3a58bb68af FileChecksum: SHA1: 83092204429abbd8109d8f9bad02377582921843 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/flathub/org.hnefatafl.hnefatafl_client.yml SPDXID: SPDXRef-905c70d3964f4259809a556f523cad7f FileChecksum: SHA1: 8fa8f6c81d815523607e580d1e2a3000a71ce495 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/hnefatafl-ai-attacker.service SPDXID: SPDXRef-18731265a73e17a63950eeb8717ff040 FileChecksum: SHA1: 6d6991ae9b43d82d08112e938c1ac95741513414 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/hnefatafl-ai-defender.service SPDXID: SPDXRef-609d72c48e96ef427c67246c94973db0 FileChecksum: SHA1: 3d32577129debc2acd58e64ae12e79bff4e09faf LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/hnefatafl-client.desktop SPDXID: SPDXRef-fb27d5c1ebe2eb0b4311ee699bae2074 FileChecksum: SHA1: 24b8ba95190d4e567d0a09cc66ba222d7e35feba LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/hnefatafl.service SPDXID: SPDXRef-36cdc5649ecec30654d24b2ab308bacc FileChecksum: SHA1: 8752f06b216d0eadea6275c454231d983c05d663 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/org.hnefatafl.hnefatafl_client.desktop SPDXID: SPDXRef-fecfd31c06d78591460906194631c6a5 FileChecksum: SHA1: 4ff1b7abad7d16c9431dc49ad21c5be805b5361f LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/org.hnefatafl.hnefatafl_client.metainfo.xml SPDXID: SPDXRef-e6bf910b2782ebf6945ab9d2135abfe1 FileChecksum: SHA1: 5e2e94312069e2c3ff47daca2af174a5ea98eb94 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/redox/fix-redox.md SPDXID: SPDXRef-1eba4ca211386246c945738b9942aa47 FileChecksum: SHA1: a7e6e0c2fa2b46931aae67d48202b87536449d28 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/redox/manifest SPDXID: SPDXRef-dcf35d09e442875b3eda9e788da0966f FileChecksum: SHA1: 4b45e9e24f6ce330d5a34fc5aa6972c6c4258956 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./packages/redox/recipe.toml SPDXID: SPDXRef-8f9c7b46db316cafa1f03b9f128055cf FileChecksum: SHA1: 501b737bc34515cf7be34c391dd123b675eb820c LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./rust-toolchain.toml SPDXID: SPDXRef-cbc8d656983e363d96f455d48ad3d3e1 FileChecksum: SHA1: 2078dc750b709abb6d969e8ff73fc0f21a7f33b7 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./src/accounts.rs SPDXID: SPDXRef-42cc96e96431ba591579a1880e2ce703 FileChecksum: SHA1: 8ac4d10a9045c58646e8338d45fc1df7e91331f3 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/ai.rs SPDXID: SPDXRef-b48fba624f9d2a61a73b2e6cb36f792e FileChecksum: SHA1: 3f301cb4cbb121c0fe40ca21c2984c9d69cb3999 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/count-keys.rs SPDXID: SPDXRef-ddb2742981c4ae5ffd81f4287064f264 FileChecksum: SHA1: 1c6025d81a2b5592aedeed6f2d25ff1ca1fc6599 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-ai.rs SPDXID: SPDXRef-d402b40235b42093e8c6cc1be2e6e7ef FileChecksum: SHA1: 9cbda3f02f686e22ea9b3caa61e8f499cc67405d LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-client/archived_game_handle.rs SPDXID: SPDXRef-40de071e36f61c9cdb5d66b75cbe148c FileChecksum: SHA1: d231b10b964a901a63304ba105a5ab93c63d2d3f LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-client/assets/capture.ogg SPDXID: SPDXRef-5e9250d23eb9fbb386b35c1329891a12 FileChecksum: SHA1: 63929ac9236f66e904467fbebbe6857f6ff21f48 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: Thibault Duplessis and the gang (lila chess authors) FileName: ./src/bin/hnefatafl-client/assets/game_over.ogg SPDXID: SPDXRef-ccc77740c9c29c7c4096b587ddfe535b FileChecksum: SHA1: ea2013e6914f77f89067bd6b504e766b6b2d49c2 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: Thibault Duplessis and the gang (lila chess authors) FileName: ./src/bin/hnefatafl-client/assets/helmet.png SPDXID: SPDXRef-30b6c8f5567fceba4036aa3e971e1d46 FileChecksum: SHA1: 69ed0f15c3dea0ae311af062ece0c7b640906428 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-client/assets/move.ogg SPDXID: SPDXRef-5972ab8175e67ae28e89f64eac026da6 FileChecksum: SHA1: 3659754acf0f132983f56f3ff4229b42fdbf5f35 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: Thibault Duplessis and the gang (lila chess authors) FileName: ./src/bin/hnefatafl-client/command_line.rs SPDXID: SPDXRef-9d270bbd5788347ffbd87bb63293db65 FileChecksum: SHA1: ec1b43d0b01776560b73a4214251ab4a04098c05 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-client/dimensions.rs SPDXID: SPDXRef-8bb335f492270a73fc39756989b6ce35 FileChecksum: SHA1: 1240e15de0dd8363699668fb9f43f13fc14c6893 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-client/enums.rs SPDXID: SPDXRef-2e02e0aa784a61a6b27f7e1e319f17b2 FileChecksum: SHA1: 5b63e7d5c92f75e92f4a0c454ebe8e490834d7ea LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-client/main.rs SPDXID: SPDXRef-c4a36df27e451a6692ee9efe7dbb2867 FileChecksum: SHA1: 9a9d11745c0dccea01bbfda8b542f300e853c549 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-client/new_game_settings.rs SPDXID: SPDXRef-ede82fb672d6be12d249652dc8e3d5a6 FileChecksum: SHA1: 1077236ee64057ed14374f8cc29cddd86c959c63 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-client/tabs.rs SPDXID: SPDXRef-3d5f208e542cb4735d1fe800a8d11197 FileChecksum: SHA1: a097dc9ddc620e53002adf590e236796426bc4d1 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2026 David Campbell FileName: ./src/bin/hnefatafl-client/user.rs SPDXID: SPDXRef-08dff2112009b6bde2064f31ae5690da FileChecksum: SHA1: 0e3fc7cd82dc7586c073287b87e09967d4239281 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-client/volume.rs SPDXID: SPDXRef-57c5b995976d14b9ddd75508a1bdf204 FileChecksum: SHA1: 2d94fbd119abbeab13aa652c8cbba31fc3fe9afb LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-server-full/command_line.rs SPDXID: SPDXRef-414cd28036347083cefe801494e5122a FileChecksum: SHA1: ffaee549862895e324b2af77ac040510d4c845c4 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-server-full/main.rs SPDXID: SPDXRef-ce0642515f769a5ed8d843743cfc3780 FileChecksum: SHA1: 7d09b0a0e6781cc9e4c53c3a83cc06c76ecf32a5 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-server-full/remove_connection.rs SPDXID: SPDXRef-86e914d4c7e731c86e61a94d897e9948 FileChecksum: SHA1: 48c3e83e39b6ce1c3006ba2ec7a78d08d64fcd78 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-server-full/smtp.rs SPDXID: SPDXRef-a0875d89c71fc620ad8c646221edde99 FileChecksum: SHA1: c5827efc6bb19fb090ac5d7d77f3689e4dbf0b44 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-server-full/tests.rs SPDXID: SPDXRef-24edcba840ced56acd11929cb662cd2f FileChecksum: SHA1: 04b20223547c2b0c89eb7dbd49ecbc594057deda LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-server-full/unix_timestamp.rs SPDXID: SPDXRef-edf5b4d66cbd98518db4ada6cf3ebcf9 FileChecksum: SHA1: 3f9da39d65d3c44a185d8414effa95a36d35efe4 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-server.rs SPDXID: SPDXRef-acbe0fcb6aaa7afc88735fc4fc235ec3 FileChecksum: SHA1: 6cdce52bf483384a617b4ffc93b21dc586d5b8a8 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/hnefatafl-text-protocol.rs SPDXID: SPDXRef-4fd75716302f275775f971f087489b1e FileChecksum: SHA1: 58a29ec0e14edc149e34ce1518a465341f5f42bf LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/icelandic-runic.rs SPDXID: SPDXRef-b6e49f3b7d24cd47d2c81387990be07e FileChecksum: SHA1: 2a91d7377db9302e71364cf1f8013577734bbd68 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/bin/send-website-urls.rs SPDXID: SPDXRef-e3dba89bbc95b44d1496264748da37bb FileChecksum: SHA1: 3bafea0e639414b474f164ff32e149717d64dc7f LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/board.rs SPDXID: SPDXRef-8c4ba7ba4a766fd87c77942d7f84bb2c FileChecksum: SHA1: 2efee7fa2f238944b11d219aa95e757350d71c82 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/characters.rs SPDXID: SPDXRef-6c2484df0067d15781a7d4a5e3ab1502 FileChecksum: SHA1: 2c9bbe7a15a4c5621ee719f83e07368150f714cc LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/draw.rs SPDXID: SPDXRef-b93c8fdc3d029268d9cd5165408ef9f0 FileChecksum: SHA1: 81f7660ee01f77fd26b6b7c4eea4ba1fbf98b311 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/email.rs SPDXID: SPDXRef-ace85009117d302397e0bbf93eefd246 FileChecksum: SHA1: 18238475859593b8812af9e4fdf03ac5bdcd58e1 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/game.rs SPDXID: SPDXRef-90982295bc16bf1b5f3c4dacea465940 FileChecksum: SHA1: 104b9f67852734d13e882cee64083d06d49480e1 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/game_tree.rs SPDXID: SPDXRef-716146e6042d93871940570990d23b19 FileChecksum: SHA1: 99e4827d76e2ed2ebee18d22d51a4694e32da102 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/glicko.rs SPDXID: SPDXRef-ac334da8d5413f6f7e2a1f3f38463b0f FileChecksum: SHA1: c778a3d0aaa4d82003f577949828ae4af5c58d5e LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/heat_map.rs SPDXID: SPDXRef-fe41383acb4d028cd00901652b64c7d5 FileChecksum: SHA1: b08ba2164b8831dbca3eb198273de5a16aaec595 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/lib.rs SPDXID: SPDXRef-9746d2d825922bf339318caaa6b9ebec FileChecksum: SHA1: 92f6b60e5ff680c793dd7cc34ac5d11f91545003 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell Copyright (C) 2025-2026 Developers of the hnefatafl-copenhagen project FileName: ./src/locale.rs SPDXID: SPDXRef-22920c7423c2c9d4c5af88793a86b704 FileChecksum: SHA1: 776ae64b5cadc142ab7976511dbdb9f5137cc193 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/message.rs SPDXID: SPDXRef-6fd0a3db6b7bd5143582334855087941 FileChecksum: SHA1: e8becfe16ea8d871ed4a8cad2a3b7109c1f65b90 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/play.rs SPDXID: SPDXRef-f34993717a11a0894e9ff87bf04663e3 FileChecksum: SHA1: 66d9288b4ce7a27f353d02e0c701d5c5f7a6421f LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/rating.rs SPDXID: SPDXRef-43ef5c190092a8e461229c4d2693c0af FileChecksum: SHA1: 3d27781f15d53e50affe9a9b27f3074b2cb73aba LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/role.rs SPDXID: SPDXRef-e5ea856419153c98871b52b4d8e90c03 FileChecksum: SHA1: 1e67b507f49d08ab87f52efc5fdda8d80d6b3d16 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/server_game.rs SPDXID: SPDXRef-b8521f6a83c5dd1fce6f6321e77027d6 FileChecksum: SHA1: 401270d860af6c1f0afcd5973ef43befe1f06b71 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/space.rs SPDXID: SPDXRef-297bdb91a76cd6ae755ee22423ba5280 FileChecksum: SHA1: 4b3f25427ffc4930df3b882e405e5e5de404a58a LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/status.rs SPDXID: SPDXRef-587781e9c710d02f3e5c88558b200224 FileChecksum: SHA1: 3b1383aa55bd4c56030fc49727f992863d9ab921 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/tests.rs SPDXID: SPDXRef-da0ee3b2fbb22c0f704cf18b5d000216 FileChecksum: SHA1: 8b1998ae66039a70c02c526d8086f9059c44e7af LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/time.rs SPDXID: SPDXRef-f2203910ebaebd8395051d5c83544851 FileChecksum: SHA1: 7a596be5cf85a4a4f51dbf1828df903f6d83842c LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/tournament.rs SPDXID: SPDXRef-b402b2d2daf7c39e4c61f49085573b83 FileChecksum: SHA1: 04f6005d8cfb203f2d86143c6775021058f60c3f LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/tree.rs SPDXID: SPDXRef-32b72b09193a876c48e4f502edc8c719 FileChecksum: SHA1: 80e8b40ab06b8a2b1407006f6be518975b53235f LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./src/utils.rs SPDXID: SPDXRef-7a06afbd21333ad1596c4fe08609fcab FileChecksum: SHA1: 6960c8934c6eac558e08dfa94ae9a0c4128cf2e1 LicenseConcluded: NOASSERTION LicenseInfoInFile: AGPL-3.0-or-later FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./supply-chain/audits.toml SPDXID: SPDXRef-1b7a495c8faff3074f47fe23bc64d655 FileChecksum: SHA1: 58ab4507221cbd877ad9c9280ca77b6c0a0ebeaf LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./supply-chain/config.toml SPDXID: SPDXRef-5b944ea9af05773ea656a201b383186a FileChecksum: SHA1: 1898fb8a4adc495b2dd4c126e9a74e2ea6e9d04f LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./supply-chain/imports.lock SPDXID: SPDXRef-37137e8fd293adc3c261ffbbcc780699 FileChecksum: SHA1: d8229a59fb2c9b55ca337a8c9d9c7202c6def62f LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./tests/copenhagen.csv SPDXID: SPDXRef-b5cf7775e99c0dc1e2fd13b6d27c0fd5 FileChecksum: SHA1: 123c1c5ab370a2b769e158389b3b8cc30240afc6 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC0-1.0 FileCopyrightText: SPDX-FileCopyrightText: NONE FileName: ./tests/hnefatafl_rs.rs SPDXID: SPDXRef-176947f1bba713fd0ca18d3a145955aa FileChecksum: SHA1: 5123d10cc4207ca1c19caa81430b4c73a2fe4f42 LicenseConcluded: NOASSERTION LicenseInfoInFile: MIT FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/book.toml SPDXID: SPDXRef-d09d20265efa6da13f36c02fa04f1ed6 FileChecksum: SHA1: 3e15689c3d4b1a8cb94f4d179530ab90c2457037 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: Copyright © 2026 [David Lawrence Campbell](https://dlc.name)" FileName: ./website/replace_strings.sh SPDXID: SPDXRef-a98716b3051e31c86c5c9146d28c9bc5 FileChecksum: SHA1: b410da8237858ebcb0638a1ca09caa7cc5c1f43e LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/404.md SPDXID: SPDXRef-e4d04e4ba587602c62557cc6d73fcb2e FileChecksum: SHA1: 49e5bc60179d619a5dda111805725398a0ae4aa7 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/README.md SPDXID: SPDXRef-12f0400a5dc3f10751e1c4de5e92fcdb FileChecksum: SHA1: ab7364080a29465b184c50d54aa53dc87e97d6c3 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/SUMMARY.md SPDXID: SPDXRef-5303915226c67b5f77cfe76a6f47a5e4 FileChecksum: SHA1: 5808ee1f36b2ba6a6bb7ad281743e872b448c094 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/ai.md SPDXID: SPDXRef-7cd9da690d1f0fe758b5cfdde35fe62e FileChecksum: SHA1: 2c1e4c0458d63c962fd0a9456d7bdb8b8a66553b LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/history.md SPDXID: SPDXRef-2b643567249774ff3b0d75b084163f12 FileChecksum: SHA1: f250d74efb62c91c65006d321bd9b685d85cf2b0 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/images/Discord-Logo-Blurple.png SPDXID: SPDXRef-8bcc24f550a6580aadf8cd87fa73da33 FileChecksum: SHA1: 02cb4b6f3bd48536b7c312a595754366d2f12ab7 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/images/hnefatafl.png SPDXID: SPDXRef-0f3287c6efc584b0ed5cb936ae76b50a FileChecksum: SHA1: ea0c4148bba7f5a4296283203ff7b46d9b20798f LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/images/money.png SPDXID: SPDXRef-de51530444bf2f1be0ff2d7cc6b8e154 FileChecksum: SHA1: bf131bb854dad93cf1b3537ba045ab669487197f LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/images/viking.jpg SPDXID: SPDXRef-b27eec33503a5bb00d7d80c263d2f289 FileChecksum: SHA1: 80b49a87ac4d438f677fae7fdc3c1f0bde8592dd LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/install.md SPDXID: SPDXRef-f4650ac7f13621dba59d051562fc32bb FileChecksum: SHA1: 8f95377354a6e1f3a677ccabab48e790e84db420 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/packages.hnefatafl.org.asc SPDXID: SPDXRef-be322e5a42bcb6d370a7698225621837 FileChecksum: SHA1: b17f3710fb96be0196aae45c9184e866ba254556 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/rules.md SPDXID: SPDXRef-97b2b6346945c10c82a18b511cfd7c11 FileChecksum: SHA1: 6a986eb5d26f769a2ec08da2f5133dfbaaf6e519 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: Copyright © 1998-2025 Aage Nielsen, All Rights Reserved; FileName: ./website/src/screenshots/ai.png SPDXID: SPDXRef-fd5e8b3eb0626c07fde0a15375b469e5 FileChecksum: SHA1: 4de04318cd2bff8da7b8a257e69bafbb722d0f4f LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/screenshots/attacker_wins.png SPDXID: SPDXRef-1064aad8a597ce69f6cb6014b84b72df FileChecksum: SHA1: 58364019df2b82ffb5082a56de81ed8d9d6357ef LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/screenshots/defender_wins.png SPDXID: SPDXRef-bb4b31060f219de2d4e6117afad8ce88 FileChecksum: SHA1: 7a761163e156c96bcd03be23bef07d860a6b0259 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/screenshots/move.png SPDXID: SPDXRef-67c72c4a0d303a260166537d2b256550 FileChecksum: SHA1: 34babc0d21c959a058379b40cb77740c7fd33320 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/screenshots/opening_game.png SPDXID: SPDXRef-e7a7a71d60f2c5428a5169b9b77974f0 FileChecksum: SHA1: fbf09dedaa82d45d3ce205311bc9c5011f75306e LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/screenshots/runic_game.png SPDXID: SPDXRef-242d463298003a1db491e4181e14fb33 FileChecksum: SHA1: 3ad1d047472397f26605f74fd012210f78842271 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/screenshots/runic_login.png SPDXID: SPDXRef-74ed08f3240c3b8b312f3b7b54d74a5c FileChecksum: SHA1: be091c1dc2db24eafec9eba37c8501ee36c1e589 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/screenshots/tournament.png SPDXID: SPDXRef-ca177e9a5fe8a19c86849c4cb723c282 FileChecksum: SHA1: 6920d1a79a5682e2d263bb4eb78f0666cbf5fed5 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/src/tournaments.md SPDXID: SPDXRef-7075558c6a7aac3712f69a440011254d FileChecksum: SHA1: 2cdf16840f00211efd59e5c48fa23ae2048f3d2e LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/theme/favicon.png SPDXID: SPDXRef-5403e8c5f2a56e8e8fc2034d564771ff FileChecksum: SHA1: 6489806fc81b025912969c0d0119a8367f20dd54 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/theme/favicon.svg SPDXID: SPDXRef-629433199b798784be0493118ba3671f FileChecksum: SHA1: bfbfacdcf87a20e0431bca6290f0594bc8ed037f LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell FileName: ./website/website.sh SPDXID: SPDXRef-9d09d728fd715a87324b73c7701a5989 FileChecksum: SHA1: 1e64eca6a83f1446e8268eed30b7972aa1711551 LicenseConcluded: NOASSERTION LicenseInfoInFile: CC-BY-NC-ND-4.0 FileCopyrightText: SPDX-FileCopyrightText: 2025 David Campbell