diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index fe0bcc36e..3a62cbd5d 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -37,3 +37,6 @@ jobs:
- name: Unit tests
run: npm test -- --ci
+
+ - name: Build and run integration
+ run: ./scripts/integration-headless.sh
diff --git a/.github/workflows/deploy-prod.yml b/.github/workflows/deploy-prod.yml
index e22c114aa..f9fb46c89 100644
--- a/.github/workflows/deploy-prod.yml
+++ b/.github/workflows/deploy-prod.yml
@@ -20,7 +20,7 @@ jobs:
uses: lewagon/wait-on-check-action@v1.3.4
with:
ref: ${{ github.ref }}
- check-name: 'Lint & Test'
+ check-name: "Lint & Test"
repo-token: ${{ secrets.GITHUB_TOKEN }}
build-prod:
@@ -46,7 +46,7 @@ jobs:
npm run postexport
env:
# Build-time envs used in next.config.js
- NET: 'mainnet'
+ NET: "mainnet"
INFURA_API_KEY: ${{ secrets.INFURA_API_KEY }}
ALCHEMY_API_KEY: ${{ secrets.ALCHEMY_API_KEY }}
GA4_TAG_ID: ${{ secrets.GA4_TAG_ID }}
@@ -79,7 +79,7 @@ jobs:
- name: Select target bucket
id: bucket
run: |
- echo "bucket=${S3_BUCKET_PROD}" >> $GITHUB_OUTPUT
+ echo "bucket=${S3_BUCKET_PROD}" >> $GITHUB_OUTPUT
env:
S3_BUCKET_PROD: ${{ secrets.S3_BUCKET_PROD }}
@@ -102,9 +102,9 @@ jobs:
- name: Invalidate CloudFront
env:
- CLOUDFRONT_DISTRIBUTION_ID_PROD: ${{ secrets.CLOUDFRONT_DISTRIBUTION_ID_PROD }}
- if: ${{ env.CLOUDFRONT_DISTRIBUTION_ID_PROD != '' }}
+ CLOUDFRONT_DISTRIBUTION_ID: ${{ secrets.CLOUDFRONT_DISTRIBUTION_ID }}
+ if: ${{ env.CLOUDFRONT_DISTRIBUTION_ID != '' }}
run: |
aws cloudfront create-invalidation \
- --distribution-id ${{ secrets.CLOUDFRONT_DISTRIBUTION_ID_PROD }} \
+ --distribution-id ${{ secrets.CLOUDFRONT_DISTRIBUTION_ID }} \
--paths "/*"
diff --git a/.testcaferc.json b/.testcaferc.json
new file mode 100644
index 000000000..c3b34f51d
--- /dev/null
+++ b/.testcaferc.json
@@ -0,0 +1,19 @@
+{
+ "selectorTimeout": 300000,
+ "assertionTimeout": 300000,
+ "pageLoadTimeout": 30000,
+ "speed": 0.1,
+ "browsers": ["chrome:headless --disable-web-security --no-sandbox --disable-dev-shm-usage"],
+ "concurrency": 1,
+ "src": ["src/**/*.spec.js"],
+ "quarantineMode": {
+ "successThreshold": 1,
+ "attemptLimit": 5
+ },
+ "skipJsErrors": true,
+ "compilerOptions": {
+ "typescript": {
+ "configPath": "./tsconfig.json"
+ }
+ }
+}
diff --git a/next.config.js b/next.config.js
index f1e47ec7f..e6163810e 100644
--- a/next.config.js
+++ b/next.config.js
@@ -9,10 +9,8 @@ const nextConfig = {
exportPathMap: function exportMap() {
return {
"/": { page: "/" },
- "/collaborate": { page: "/collaborate" },
"/privacy": { page: "/privacy" },
"/terms": { page: "/terms" },
- "/collaborators-terms": { page: "/collaborators-terms" },
"/viewer": { page: "/viewer" },
"/faq": { page: "/faq" },
};
diff --git a/package.json b/package.json
index a9d3cdc3e..4df11c3c0 100644
--- a/package.json
+++ b/package.json
@@ -28,7 +28,7 @@
"serve-static": "http-server out -s -p 3000",
"integration": "testcafe chrome src/**/*.spec.js --selector-timeout 10000 --ts-config-path ./tsconfig.json",
"integration:single": "testcafe chrome -L --app \"npm run serve-static\"",
- "integration:headless": "testcafe -c 1 'chrome --headless=new --disable-web-security' --selector-timeout 300000 src/**/*.spec.js",
+ "integration:headless": "testcafe",
"integration:watch": "nodemon --exec \"npm run integration\" --watch src",
"type-check": "npx tsc --noEmit"
},
diff --git a/pages/collaborators-terms.tsx b/pages/collaborators-terms.tsx
deleted file mode 100644
index 49a8646ac..000000000
--- a/pages/collaborators-terms.tsx
+++ /dev/null
@@ -1,32 +0,0 @@
-import { NextSeo } from "next-seo";
-import React from "react";
-import { CollaboratorsTerms } from "../src/components/Collaborate/CollaboratorsTerms";
-import { Wrapper, Main } from "../src/components/Layout/Body";
-import { FooterBar } from "../src/components/Layout/FooterBar";
-import { NavigationBar } from "../src/components/Layout/NavigationBar";
-import { URL } from "../src/config";
-
-const PAGE_SEO = {
- title: "Terms of use for collaborators",
- description: "These Terms of Use govern your way of collaborating on opencerts",
- openGraph: {
- title: "OpenCerts - Collaborators terms of use",
- description: "These Terms of Use govern your way of collaborating on opencerts",
- url: `${URL}/collaborators-terms`,
- },
-};
-
-const CollaboratorsTermsPage: React.FunctionComponent = () => (
- <>
-
-
-
-
-
-
-
-
- >
-);
-
-export default CollaboratorsTermsPage;
diff --git a/public/static/demo/amoy.opencert b/public/static/demo/amoy.opencert
index 622dd45fe..ce748dedf 100644
--- a/public/static/demo/amoy.opencert
+++ b/public/static/demo/amoy.opencert
@@ -1,97 +1,96 @@
{
"version": "https://schema.openattestation.com/2.0/schema.json",
"data": {
- "id": "323f4f95-e230-47aa-bffc-c2f8e52203f4:string:53b75bbe",
- "name": "30f15a3c-f297-487d-8a3d-d2aca332bb19:string:GovTech Demo Certificate",
- "description": "64a281dc-daf1-4043-a3eb-129087d5b5e8:string:GovTech Demo Certificate",
- "issuedOn": "09b0b195-0632-4306-97de-5cbcea3d4369:string:2019-05-29T00:00:00+08:00",
- "admissionDate": "9c0de9f9-fc3a-4ede-a554-dbab81af33ef:string:2017-08-01T00:00:00+08:00",
- "graduationDate": "dc2759a6-460e-481e-961d-d2bd72eef7a9:string:2022-08-01T00:00:00+08:00",
- "network": {
- "chain": "93f22e33-36a0-4816-852d-ff775b89b35b:string:MATIC",
- "chainId": "28df7d7f-28e0-430d-8f55-4472cef76851:string:80002"
- },
+ "id": "83a3a2a6-cbf2-44d9-8568-9c54787f0931:string:53b75bbe",
+ "name": "c2a91326-bce8-4b36-8554-9496a161ee5a:string:Opencerts Demo Certificate",
+ "description": "8d0e23be-25ea-4df1-8386-25f7f10cf2e5:string:Opencerts Demo Certificate",
+ "issuedOn": "2333b579-e0f2-48f2-b7aa-9c1ab4005f2d:string:2025-05-29T00:00:00+08:00",
+ "admissionDate": "2be5d35e-cb65-4be9-b0b4-687cce7cc62a:string:2020-08-01T00:00:00+08:00",
+ "graduationDate": "de872f8e-f2d0-44fa-a8b2-3ac9fa91e288:string:2025-08-01T00:00:00+08:00",
"$template": {
- "name": "d35f619d-5186-4f6d-9273-d2557a21552d:string:GOVTECH_DEMO",
- "type": "72faab6c-6333-436a-9702-929b3d82b8da:string:EMBEDDED_RENDERER",
- "url": "75fc4ccf-0d32-43b0-899c-f44def141344:string:https://demo-renderer.opencerts.io"
+ "name": "92a22d81-d424-4f16-92c1-49ad6973c72b:string:OPENCERTS_DEMO",
+ "type": "c233fa36-24cf-40db-8da7-c8480eb7e194:string:EMBEDDED_RENDERER",
+ "url": "9216f457-abc7-4159-b100-83ac2618f77b:string:https://demo-renderer.opencerts.io"
+ },
+ "network": {
+ "chain": "219d026d-fdf4-4065-acfe-5fdd7e9f5137:string:MATIC",
+ "chainId": "9c51d2ff-686d-414f-b8c8-dac3e5249809:string:80002"
},
"issuers": [
{
- "name": "a511e4d1-c7c5-492f-9e23-7b36e7bd230c:string:GovTech Singapore",
- "url": "c90bf6fd-a9c0-40be-b3c7-d73a698d9de4:string:https://tech.gov.sg",
- "documentStore": "d496dc5d-ce04-4614-8f29-46402d46f82a:string:0x80732bF5CA47A85e599f3ac9572F602c249C8A28",
+ "name": "4bf05c57-51a4-4d40-af0f-9ecb6e9b7257:string:Opencerts",
+ "documentStore": "5b076a9b-0844-4da6-ad43-87c5d2ab58b0:string:0x86F31822a4D0ef6602A3d810F4bbD0766dce535C",
"identityProof": {
- "type": "08fbe26c-3bda-47df-9b95-62cc88e29707:string:DNS-TXT",
- "location": "7c322878-4f7a-4812-b464-9a52130be1ce:string:demo-opencerts.openattestation.com"
+ "type": "fa4d8ac8-0c34-487e-bc8d-8815dcee09de:string:DNS-TXT",
+ "location": "73bda524-4788-4359-94cf-c332cd00c733:string:dev.opencerts.io"
}
}
],
"recipient": {
- "name": "2df10442-af82-48d7-a6c7-8edc51dcdc7d:string:Your Name",
- "nric": "5d6a6ca5-dfea-44ee-8fbf-3c079a8b4f72:string:SXXXXXXXY",
- "course": "b083813c-01ed-4576-80eb-1745c3171895:string:GovTech Demo"
+ "name": "5206d617-3b4e-42f9-885f-c7c4bf1a1db1:string:Your Name",
+ "nric": "57732967-0a6f-4dab-a2e7-cf9f2b5af0d1:string:SXXXXXXXY",
+ "course": "0072b4f8-d915-4c1e-82d6-e9d1a4e38227:string:OpenCerts Demo"
},
"transcript": [
{
- "name": "c2b41c47-e32b-4836-b4a6-937d8a637b39:string:Introduction to Programming",
- "grade": "8f86a94f-c8e2-4263-96fa-7ecde28c7849:string:A+",
- "courseCredit": "b3b1820b-7611-4880-8670-0159980deecb:string:3",
- "courseCode": "0d0fe84a-f773-4b6c-8a60-9fe31278f639:string:CS 1110",
- "examinationDate": "749bd321-1b15-4274-84cd-f0cb27c63783:string:2017-12-01T00:00:00+08:00",
- "semester": "0d903806-7ea0-4b3a-82c2-ac1d95dc551e:string:1"
+ "name": "e444c607-b57f-4721-a74c-219dc0818ba7:string:Introduction to Programming",
+ "grade": "6f814b04-5398-4467-9616-4f068c345d02:string:A+",
+ "courseCredit": "2c56c6f9-5a2d-4225-a7cc-5da0217c74de:string:3",
+ "courseCode": "9bda04f9-3c1f-4de8-82bb-f30181d416ba:string:CS 1110",
+ "examinationDate": "53c04943-cdb7-4cc1-8895-34111bdfbb13:string:2020-12-01T00:00:00+08:00",
+ "semester": "32191627-d249-412b-808b-0564b9b860fc:string:1"
},
{
- "name": "2fd7e050-cbce-4888-95e3-615c49760211:string:Object Oriented Programming in Java",
- "grade": "d56ae691-b503-4f76-b5ea-638e99d63520:string:A+",
- "courseCredit": "7914c39c-a909-45bb-860e-aad2a2851915:string:4",
- "courseCode": "6e324427-f8ad-472a-a72e-f59580dd2c9b:string:CS 2110",
- "examinationDate": "ad6c7627-225a-41ec-bd5d-d6e061f8c1be:string:2017-12-01T00:00:00+08:00",
- "semester": "c91f2fe6-e374-426e-9fc7-8c6427cb5952:string:1"
+ "name": "ab198205-9549-46da-8a88-ef7c8b3a4795:string:Object Oriented Programming in Java",
+ "grade": "10ab5ea8-322d-46e0-b13d-0f95d3402b1f:string:A+",
+ "courseCredit": "a128d259-d3a1-4440-807a-ad8c3c2885b7:string:4",
+ "courseCode": "f333f119-c643-4f46-986c-a9a9af84aaca:string:CS 2110",
+ "examinationDate": "d114f493-8aec-4643-876b-8418bc1f850f:string:2021-12-01T00:00:00+08:00",
+ "semester": "1721ae97-b4b1-439d-b2fb-72a3ad948066:string:1"
},
{
- "name": "9bf6fb55-784f-4cbb-a78f-4ef2e1b14831:string:Microeconomics",
- "grade": "81636acf-6ec8-40e2-86be-19d932b7bf5b:string:A+",
- "courseCredit": "116b1481-5d8b-474f-b2fe-4b684f608d8c:string:4",
- "courseCode": "48f2fcb9-6f70-4d58-b1f4-55fac40751f8:string:ECON 3030",
- "examinationDate": "6a7c88d5-5601-4fc2-8e3e-78c2383d76a3:string:2018-05-01T00:00:00+08:00",
- "semester": "79f9b2e1-2ff6-4797-bc32-8bd172933534:string:2"
+ "name": "11c43594-e2aa-40c9-8021-97ca33eb134e:string:Microeconomics",
+ "grade": "7e5b88e0-e79a-4d6a-9ef0-6aaef4a54202:string:A+",
+ "courseCredit": "2ec0e438-22f7-462b-b612-89e096b929fe:string:4",
+ "courseCode": "a91c21be-738f-44e4-824f-15df103385de:string:ECON 3030",
+ "examinationDate": "e0a349d9-576b-490e-b38e-c2b75d895868:string:2022-05-01T00:00:00+08:00",
+ "semester": "d73c39d9-fbf2-4250-8444-633c9905b0f5:string:2"
},
{
- "name": "570d5628-c436-4e3e-b99c-89f98d292f1a:string:Macroeconomics",
- "grade": "bee8e830-8bad-476a-b095-314e9b260e6c:string:A",
- "courseCredit": "cb44e3a5-d893-46a5-99be-f19bbaa8e86b:string:4",
- "courseCode": "d45f36f5-8979-4eae-af34-66c082d3dac0:string:ECON 3040",
- "examinationDate": "ab52811e-cf41-4cd4-8507-6b8c9c519591:string:2018-05-01T00:00:00+08:00",
- "semester": "e14a6485-e109-4e9d-8d63-d48f56dc90ef:string:2"
+ "name": "93dc1388-05a3-4753-b80f-b33d6e230806:string:Macroeconomics",
+ "grade": "65f58bfc-325f-457a-9322-694bf5a46473:string:A",
+ "courseCredit": "74fc90e1-7081-4a04-9396-d1ef99cf11cf:string:4",
+ "courseCode": "36c65389-34e0-4e32-98eb-af00934c15f2:string:ECON 3040",
+ "examinationDate": "054abb09-6a4d-46bf-9628-cec0dd2da115:string:2023-05-01T00:00:00+08:00",
+ "semester": "4ce294dd-65c2-4e8b-bc0c-a4a5fca91d2b:string:2"
},
{
- "name": "50530b7c-b717-4792-a6b5-0c49f3192eaf:string:Econometrics",
- "grade": "c0e688bc-a265-4ed0-8186-3e16c1bdd42a:string:A-",
- "courseCredit": "5858f8bb-6bea-4e81-8c44-e6e5ed5c1e69:string:4",
- "courseCode": "432ab29c-9bd3-49e4-a981-d7b6d9af86b8:string:ECON 3120",
- "examinationDate": "94ccbdf8-8d64-487d-bc20-9055a7cce5f3:string:2018-05-01T00:00:00+08:00",
- "semester": "6a6daa2d-b5e7-493a-922a-ec6501e1ea41:string:2"
+ "name": "3ccb5f76-1e68-41c1-a0f0-986bab3da826:string:Econometrics",
+ "grade": "375176fb-a138-489f-b947-e573ee37ad9f:string:A-",
+ "courseCredit": "ef5b2c95-5d06-4254-b6ff-d4b1a409bbfd:string:4",
+ "courseCode": "b2a80079-f418-4781-941c-9be6a9039f5d:string:ECON 3120",
+ "examinationDate": "c2371a1f-8aee-4f74-9f96-18fcff35949a:string:2024-05-01T00:00:00+08:00",
+ "semester": "f53715c4-b1bc-41ae-ad83-72aac0476847:string:2"
}
],
"additionalData": {
- "merit": "17e33db7-fe86-46b5-85c2-abf2af480439:string:Y",
- "studentId": "be5862df-b83c-4192-9e4e-1d5c0f73c732:string:123456",
- "transcriptId": "744197ce-fb34-4732-8be6-290bef0670b5:string:001",
+ "merit": "de2b546d-7726-4223-929b-e2705c694965:string:Y",
+ "studentId": "144acfe9-27bb-414d-8b02-642393051e86:string:123456",
+ "transcriptId": "397c77fb-1643-4da2-887d-09f50543c82f:string:001",
"certSignatories": [
{
- "signature": "86ccf4f0-a72e-426c-b500-ee045730c671:string:data:image/png;base64,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",
- "name": "3a6f1001-cbcd-46dd-b72a-bcbad79ddb01:string:John Demo",
- "position": "c4f91ee8-3b5e-4021-806b-ecedea60d69d:string:Dean of Demos",
- "organisation": "0421301c-2fc8-4b4b-a23c-f5b79956caa0:string:GovTech Singapore"
+ "signature": "f6528760-503e-4b9f-8ee3-c9c1d262c77f:string:data:image/png;base64,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",
+ "name": "29bc153c-8e4e-424f-a1b2-134fdbcb31b9:string:John Demo",
+ "position": "d5538338-1b68-4888-b5de-dae0a693e805:string:Dean of Demos",
+ "organisation": "48f0bc26-a813-43d9-8082-7c8403ca0513:string:Opencerts"
}
]
}
},
"signature": {
"type": "SHA3MerkleProof",
- "targetHash": "025533ff444b74f7a698dc5ed4d9196625cbfca489e25ac10c079789071de7c3",
+ "targetHash": "4a597dfc77ff49051822f46c1cc26455b076cb221689c99a3a85f77fd77566f9",
"proof": [],
- "merkleRoot": "025533ff444b74f7a698dc5ed4d9196625cbfca489e25ac10c079789071de7c3"
+ "merkleRoot": "4a597dfc77ff49051822f46c1cc26455b076cb221689c99a3a85f77fd77566f9"
}
}
diff --git a/public/static/demo/homestead.opencert b/public/static/demo/homestead.opencert
index e5e8b278a..321aa7435 100644
--- a/public/static/demo/homestead.opencert
+++ b/public/static/demo/homestead.opencert
@@ -1,90 +1,92 @@
{
- "schema": "opencerts/v2.0",
+ "version": "https://schema.openattestation.com/2.0/schema.json",
"data": {
- "id": "364999b4-486d-443e-96b8-3aae3eb16794:string:53b75bbe",
- "name": "ece7899c-2060-4a90-8afe-1b0305f7651a:string:Govtech Demo Certificate",
- "description": "3dc72e61-2ce4-4e44-90ce-9e4ea5e3e109:string:Govtech Demo Certificate",
- "issuedOn": "8bf78a87-67a8-43c2-91ca-f25051b4898d:string:2019-05-29T00:00:00+08:00",
- "admissionDate": "a8e53a7a-01ec-4b36-9cb3-a15d7e655d78:string:2017-08-01T00:00:00+08:00",
- "graduationDate": "ced7652e-ece9-4319-9393-478004525ed0:string:2022-08-01T00:00:00+08:00",
+ "id": "99058267-23e7-4540-977b-ef9790bb21c0:string:53b75bbe",
+ "name": "c763cfdd-f543-4258-a69a-c49fa9115d77:string:Opencerts Demo Certificate",
+ "description": "41571338-6f96-43c2-82bb-2886e2c0f5e7:string:Opencerts Demo Certificate",
+ "issuedOn": "43ad0d61-48f0-4cb1-ab2a-a3ce0d4862b6:string:2025-05-29T00:00:00+08:00",
+ "admissionDate": "f91e4fa4-6e7b-48b0-85ad-1ad7acd460e7:string:2020-08-01T00:00:00+08:00",
+ "graduationDate": "fb9be3b8-96db-418e-8940-ab45ad1ff246:string:2025-08-01T00:00:00+08:00",
"$template": {
- "name": "9ae67ad8-2e9f-4309-a3fa-b5eea35d6066:string:GOVTECH_DEMO",
- "type": "f8b29fb4-614c-4815-970c-3a69d986f30a:string:EMBEDDED_RENDERER",
- "url": "a59366a8-09f7-49cd-a7ce-228f64f04fb7:string:https://demo-renderer.opencerts.io"
+ "name": "4bb2ef9c-e9c1-486c-9f65-208a0e1d666f:string:OPENCERTS_DEMO",
+ "type": "c8028dfa-6d6e-4ea7-a5e9-ea99a41da40b:string:EMBEDDED_RENDERER",
+ "url": "d98a329b-67c9-4fec-bca5-3b0785883632:string:https://demo-renderer.opencerts.io"
},
"issuers": [
{
- "name": "996ac57b-db78-459c-b77a-3eaef5df4504:string:Govtech",
- "url": "23ef3d1b-09e0-41b6-84b4-b99c10605c06:string:https://tech.gov.sg",
- "certificateStore": "cbcb5069-43ed-4b55-ab46-91ec8f9432e7:string:0x007d40224f6562461633ccfbaffd359ebb2fc9ba"
+ "name": "60f44aa6-318b-45a1-b3cb-7611d3fdfebc:string:Opencerts",
+ "documentStore": "4aee735e-ba44-40b5-bde4-62a2629295e9:string:0x641bDE53Df8C249dD123e532764420Ed82cfb664",
+ "identityProof": {
+ "type": "6180bc6f-7ffe-4002-8ca0-a2dc7a06f259:string:DNS-TXT",
+ "location": "567ea620-4e2b-4557-8fc3-65f7c9941a82:string:opencerts.io"
+ }
}
],
"recipient": {
- "name": "c4ac4a20-27ad-403e-bf4c-1d85ccc099c2:string:Your Name",
- "nric": "2f30a86d-b2e2-4e9c-97d6-4ae76efd0376:string:SXXXXXXXY",
- "course": "79c62487-9462-45a4-bfb2-f0ed2b48d53c:string:Govtech Demo"
+ "name": "b35e2000-f5fc-4648-b8f0-e60e47b91688:string:Your Name",
+ "nric": "889d200a-2f77-4436-b24f-66da01f6f977:string:SXXXXXXXY",
+ "course": "976359b5-abd7-4589-ab9d-626bef6b87b4:string:OpenCerts Demo"
},
"transcript": [
{
- "name": "15a2c149-d694-4502-b465-f35acc80c8d7:string:Introduction to Programming",
- "grade": "4dd3f23d-8ba5-4e13-a9ab-a89196b73c3a:string:A+",
- "courseCredit": "891ea249-1f9f-4f9f-935a-b1fbcfdc684b:string:3",
- "courseCode": "d3aef81e-fa1d-4099-bb4f-01822855a87f:string:CS 1110",
- "examinationDate": "22b08033-f1c4-4823-9122-17b40b51ead8:string:2017-12-01T00:00:00+08:00",
- "semester": "7e01cb46-5222-40dc-a79f-5ff802181e62:string:1"
+ "name": "80220920-efb3-4891-ba4d-f65ecbe94e08:string:Introduction to Programming",
+ "grade": "0c11d304-8a33-4607-8500-ace83f64a84b:string:A+",
+ "courseCredit": "ca5023ca-e1ba-464c-970a-3e95c800886d:string:3",
+ "courseCode": "149388ce-d243-4214-947d-bdce88275248:string:CS 1110",
+ "examinationDate": "4b56a0b6-911b-469b-a0af-ece45d1b1c3a:string:2020-12-01T00:00:00+08:00",
+ "semester": "097886a2-e1ea-4a56-8584-83a765623eec:string:1"
},
{
- "name": "77f9c638-fba4-4bf5-aa90-73f038329886:string:Object Oriented Programming in Java",
- "grade": "a4e3e3c5-5840-47c3-acfd-3e6f9acfaef4:string:A+",
- "courseCredit": "8007267f-65f9-4396-a3e6-ef1fc5116918:string:4",
- "courseCode": "b25611aa-a807-4134-89eb-86a4bc030c81:string:CS 2110",
- "examinationDate": "9199ebea-eb76-4b38-9f3d-e5e01726106b:string:2017-12-01T00:00:00+08:00",
- "semester": "b3315025-d093-4694-b05a-76722377d692:string:1"
+ "name": "aef69586-5c89-47a6-b19d-5cc8d63b8d06:string:Object Oriented Programming in Java",
+ "grade": "93c11754-a338-4b48-ba60-cf685087ddf5:string:A+",
+ "courseCredit": "8d72b490-02bd-41d2-b2c6-384b2216c146:string:4",
+ "courseCode": "e604a19b-8d27-439a-af9b-fe4d0447677e:string:CS 2110",
+ "examinationDate": "524e1b75-0c0d-4f7b-bf48-bd48feed2e08:string:2021-12-01T00:00:00+08:00",
+ "semester": "80f8ae4c-a31e-4317-88d9-368a9267bbfb:string:2"
},
{
- "name": "da500ed9-d048-4d01-8136-266bdc0fed62:string:Microeconomics",
- "grade": "4f3e8c12-d485-4a65-9b81-cac74891008e:string:A+",
- "courseCredit": "ade2548b-4bda-416e-aae1-17d1d22183be:string:4",
- "courseCode": "31be4505-b52c-476a-9d2e-60e88d9c5a64:string:ECON 3030",
- "examinationDate": "912bf9f9-8b81-4a35-87af-f8113792bfda:string:2018-05-01T00:00:00+08:00",
- "semester": "484fce34-f4f4-4533-8a22-0dc534f8a3b8:string:2"
+ "name": "0631f3c1-4e93-407c-89bb-f7a4cd0e2492:string:Microeconomics",
+ "grade": "f958cd24-e9d0-4945-8e89-0a1915dcb9ec:string:A+",
+ "courseCredit": "5c0fe648-f011-4b48-8d7a-92748f9158b2:string:4",
+ "courseCode": "0aadd6a3-9319-4d36-b101-d6fe5437816b:string:ECON 3030",
+ "examinationDate": "8f4b8ce3-5b4e-4bce-8e2f-19ea61cb23a6:string:2022-05-01T00:00:00+08:00",
+ "semester": "24a2f0cb-914f-41d5-9301-3a6370c9a84b:string:3"
},
{
- "name": "34508506-3165-4944-a14b-667023aab98b:string:Macroeconomics",
- "grade": "3ee3926a-fd44-44a7-81fa-30509b0058df:string:A",
- "courseCredit": "a87daea5-5e8b-40b1-87f5-20527ac5807b:string:4",
- "courseCode": "90d93dd3-c586-488f-9968-618837dad6cc:string:ECON 3040",
- "examinationDate": "378fcc06-e763-47b8-9f2e-248a29ac82fe:string:2018-05-01T00:00:00+08:00",
- "semester": "aeb21232-1756-42a1-999a-2257bef5da4b:string:2"
+ "name": "6536359b-cf78-4721-8913-7269e6afb6e1:string:Macroeconomics",
+ "grade": "a0228362-4179-4407-a0ca-aabab8027e51:string:A",
+ "courseCredit": "2dab9b50-9adc-494f-94f2-3787d072b80e:string:4",
+ "courseCode": "7fff22b6-b9c7-49ea-9eae-67cb15fc22cd:string:ECON 3040",
+ "examinationDate": "60afa71e-2680-46ac-be21-650353fc2041:string:2023-05-01T00:00:00+08:00",
+ "semester": "db7c8385-1c18-4452-8a3b-e68d63178acb:string:4"
},
{
- "name": "d50239be-963e-48d4-ba5f-c9bbc096eb9d:string:Econometrics",
- "grade": "cbc52f57-b54a-4a22-90f5-3da13500c099:string:A-",
- "courseCredit": "74d5d074-859a-472f-91a6-cd2807ae44a8:string:4",
- "courseCode": "a098f8d1-db6c-436d-918b-4c0bbd4d9f1b:string:ECON 3120",
- "examinationDate": "46e564b2-12e1-4ee6-b44a-9127130a029c:string:2018-05-01T00:00:00+08:00",
- "semester": "25b73bc3-87e9-42d4-8c92-6e6a0f58e962:string:2"
+ "name": "490ee6ae-9db8-46e3-90f0-22fd3bf30ba0:string:Econometrics",
+ "grade": "c89b2f5b-e7a2-4795-9382-b229d7b45dbe:string:A-",
+ "courseCredit": "0c0450a3-7f5e-410c-8662-2184886045ce:string:4",
+ "courseCode": "1cee504f-11cd-4bb8-a074-2bc09ccb878a:string:ECON 3120",
+ "examinationDate": "79fa5252-3155-459b-8d77-f468109114dc:string:2024-05-01T00:00:00+08:00",
+ "semester": "eae9c859-de7d-4a34-a57c-0c3c2bab9ef3:string:5"
}
],
"additionalData": {
- "merit": "642253d5-2903-4e9d-907f-3b1c755d9cb0:string:Y",
- "studentId": "dd99a0c8-2821-45fc-9130-14bf84313068:string:123456",
- "transcriptId": "6d97c844-daf5-4768-851b-9bc43f3bdd8b:string:001",
+ "merit": "af2774a7-79f3-43b4-879e-02e7021abbba:string:Y",
+ "studentId": "d968a002-834f-490e-aedd-da8430ee9c66:string:123456",
+ "transcriptId": "47085854-5b87-420b-9e3e-e7e6b33222d0:string:001",
"certSignatories": [
{
- "signature": "7902fe34-c782-4c1d-9960-20f67c5f7d69:string:data:image/png;base64,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",
- "name": "2d36ba5a-1a6d-4159-95f6-656f4aa070e2:string:John Demo",
- "position": "e4218000-12ae-4605-a969-8b9963e7cc62:string:Dean of Demos",
- "organisation": "39502ba4-808c-40d0-8751-95d4de7e64bd:string:Govtech"
+ "signature": "5960e70e-8a78-479e-9ff1-43a536a8db47:string:data:image/png;base64,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",
+ "name": "5ca93796-e8a2-4ddb-bdae-77fee89e09ae:string:John Demo",
+ "position": "a7555002-b96a-4d33-8aec-6e5692440ff5:string:Dean of Demos",
+ "organisation": "28f18be7-037b-4b49-a188-3d6bf2ae5638:string:Opencerts"
}
]
}
},
- "privacy": {},
"signature": {
"type": "SHA3MerkleProof",
- "targetHash": "cbd224a72af5e0050bd58ab2264094cbacac0f19f7f430e347cad451ae8c590d",
+ "targetHash": "0aeccde6a769adf132e17ec171cd4ef4eb5e707337965f69ad7b777d6f73c050",
"proof": [],
- "merkleRoot": "cbd224a72af5e0050bd58ab2264094cbacac0f19f7f430e347cad451ae8c590d"
+ "merkleRoot": "0aeccde6a769adf132e17ec171cd4ef4eb5e707337965f69ad7b777d6f73c050"
}
}
diff --git a/public/static/demo/goerli.opencert b/public/static/demo/polygon.opencert
similarity index 79%
rename from public/static/demo/goerli.opencert
rename to public/static/demo/polygon.opencert
index a2fcc7e2f..18ac60c3d 100644
--- a/public/static/demo/goerli.opencert
+++ b/public/static/demo/polygon.opencert
@@ -1,93 +1,96 @@
{
"version": "https://schema.openattestation.com/2.0/schema.json",
"data": {
- "id": "670a0932-d08b-49aa-8299-f0e6349d863d:string:53b75bbe",
- "name": "fddc218d-e912-48d1-b53a-1254d00c53bf:string:GovTech Demo Certificate",
- "description": "b1667d51-fa06-43db-9ec9-b641337b0098:string:GovTech Demo Certificate",
- "issuedOn": "4eaa901b-2ca9-4e02-9f2d-a4492d7bbdf8:string:2019-05-29T00:00:00+08:00",
- "admissionDate": "09a768f3-72bf-4bdc-af50-fa953e24ee63:string:2017-08-01T00:00:00+08:00",
- "graduationDate": "65d05481-430e-4fa8-b1a9-2608975b7efe:string:2022-08-01T00:00:00+08:00",
+ "id": "567d6233-1cc1-465a-b519-68e143ede647:string:53b75bbe",
+ "name": "5d363e06-9627-4673-9906-80a13884e0dc:string:Opencerts Demo Certificate",
+ "description": "f041fa6a-e9ef-4d91-aa76-e38c9d8544fc:string:Opencerts Demo Certificate",
+ "issuedOn": "619ecb3a-26f0-4f16-bde1-858dff789be8:string:2025-05-29T00:00:00+08:00",
+ "admissionDate": "e55e9b99-3fe8-437b-a855-842c3e81719b:string:2020-08-01T00:00:00+08:00",
+ "graduationDate": "f0989e7c-eb2e-43c5-af1f-b178caf8d806:string:2025-08-01T00:00:00+08:00",
"$template": {
- "name": "bb1834c0-6ca8-44fc-9b4d-1483f0d62cb9:string:GOVTECH_DEMO",
- "type": "b45dccc7-f244-4b2d-9bcc-a33d18458242:string:EMBEDDED_RENDERER",
- "url": "b8d4e18c-0acb-4c7e-b26b-40f65868edc5:string:https://demo-renderer.opencerts.io"
+ "name": "fc4fb3bd-b469-4c65-a463-90488547d48d:string:OPENCERTS_DEMO",
+ "type": "a05bd463-e002-4960-b9df-c17a6e21f31b:string:EMBEDDED_RENDERER",
+ "url": "0556592e-90be-4cc9-a9a7-aefbe939319a:string:https://demo-renderer.opencerts.io"
+ },
+ "network": {
+ "chain": "e7b11f8b-5281-40e2-9aeb-35bb7bdfeea4:string:MATIC",
+ "chainId": "4c1cee91-12d6-42b5-9f4c-c0635dc52649:string:137"
},
"issuers": [
{
- "name": "5e21978e-4a22-45cc-95a6-deee8fd58c29:string:GovTech Singapore",
- "url": "d30c6ef6-a4b4-4e08-8889-bd51433add7a:string:https://tech.gov.sg",
- "documentStore": "5210dacf-07c7-449a-b23e-db70eda53b07:string:0xb3db78c0cc3622e078622C8395095a7B95415Acf",
+ "name": "3b6e8cfc-573e-4ff4-bf02-949003d46b89:string:Opencerts",
+ "documentStore": "62007ebf-eb12-4180-a152-31d1fd959966:string:0x3a0369733599c78f5F48f7A7DfB116D83776EEDc",
"identityProof": {
- "type": "4c1c08fb-15d1-4ae3-850b-6d56efb8dd81:string:DNS-TXT",
- "location": "e5bed439-fde6-431f-b8c1-0ad46105c071:string:demo-opencerts.openattestation.com"
+ "type": "dc0bdc18-bcdb-4878-8fb2-34aabb426649:string:DNS-TXT",
+ "location": "22c8ea15-a236-4992-85ac-b81e25b073be:string:opencerts.io"
}
}
],
"recipient": {
- "name": "ca3e0d15-288b-449f-bfaa-d436e778dc91:string:Your Name",
- "nric": "c2bd4d18-30fc-4663-a5ce-538f8faded3e:string:SXXXXXXXY",
- "course": "8223361f-6d0c-4f10-ab1e-d7783932b04c:string:GovTech Demo"
+ "name": "31788028-d877-4cdf-b784-9bb02cb1df17:string:Your Name",
+ "nric": "c2b57438-adb8-433d-a6a2-0dd61b549f12:string:SXXXXXXXY",
+ "course": "0d261570-20a5-4183-b669-952bfb4c3b23:string:OpenCerts Demo"
},
"transcript": [
{
- "name": "c461f144-da45-4f4e-a067-2a6389282ce0:string:Introduction to Programming",
- "grade": "c47126ad-d346-42a8-81bb-463bf827caec:string:A+",
- "courseCredit": "981ca2ed-7b34-4fc8-aeb5-5d1a39a3f1e7:string:3",
- "courseCode": "ec5d0ac1-fe17-4d2e-bb9e-ea2fe0b38da3:string:CS 1110",
- "examinationDate": "0f98cb19-f8bf-437d-b258-fc2f6e32e65f:string:2017-12-01T00:00:00+08:00",
- "semester": "ffff4665-15a9-486f-bf77-fb1b2aea7bf9:string:1"
+ "name": "228c7982-0240-4e37-b9a0-ad1d4e34c9b8:string:Introduction to Programming",
+ "grade": "e4fa4b01-a664-4b13-b9a3-ea047ef5fbbf:string:A+",
+ "courseCredit": "e26ecd56-7d5f-4cfc-835f-01212eb388a1:string:3",
+ "courseCode": "873e700c-e8df-462c-a52e-105998656106:string:CS 1110",
+ "examinationDate": "69506396-6b09-44c0-b713-70f1d4644531:string:2020-12-01T00:00:00+08:00",
+ "semester": "868f0579-1910-4db3-8610-1abd8fb809df:string:1"
},
{
- "name": "5987e5bd-3b37-45ae-8d5e-4db625dcb5fa:string:Object Oriented Programming in Java",
- "grade": "a513ddd9-c681-4a17-acf3-e8017e0f9f0f:string:A+",
- "courseCredit": "f6f20684-1a3a-4e0b-a5e4-0c54e882623c:string:4",
- "courseCode": "49a78fa5-1bbd-49d4-acd9-4519cd51e145:string:CS 2110",
- "examinationDate": "c5dd90bc-9e03-49db-9b23-a1926d18fdad:string:2017-12-01T00:00:00+08:00",
- "semester": "eb45a6b0-f656-4109-ba2e-e92d86321e15:string:1"
+ "name": "cfd14eb5-4e9e-4800-959d-2655746db32a:string:Object Oriented Programming in Java",
+ "grade": "3d320510-82d0-43bc-9e3a-6ad8d6d63e01:string:A+",
+ "courseCredit": "c15e45bd-bd30-401d-90b0-3e8cb8616964:string:4",
+ "courseCode": "e05022f3-41f1-4012-8f1b-0569a5cfedb4:string:CS 2110",
+ "examinationDate": "9c4112c8-78e8-430b-b28b-75106e0404cc:string:2021-12-01T00:00:00+08:00",
+ "semester": "bb5e5ca0-b6e6-4127-aa40-1111562f53ac:string:1"
},
{
- "name": "749ccdcb-d3e8-46b3-b8e4-9aaf58dc66c5:string:Microeconomics",
- "grade": "4c0d2c9d-4bd8-4aaa-9f1a-a4a783523a38:string:A+",
- "courseCredit": "d9c37bb7-8995-432b-83f1-f7d366266609:string:4",
- "courseCode": "f5853b4e-fe2a-49a0-88cb-0a09e35b26b8:string:ECON 3030",
- "examinationDate": "16cca6b8-b635-4748-878a-62a5a3dee21a:string:2018-05-01T00:00:00+08:00",
- "semester": "228bc3cc-ae04-4fe5-b701-ac68fe3a26af:string:2"
+ "name": "5ae5442c-04e7-44ab-a896-c8d97c001cba:string:Microeconomics",
+ "grade": "afcc502a-67e0-4431-803e-efcc4f7a4a8c:string:A+",
+ "courseCredit": "7195724e-7951-43bd-b172-360c71392af0:string:4",
+ "courseCode": "ee1c643b-6b83-4553-9f95-616a5e50f251:string:ECON 3030",
+ "examinationDate": "3d101a27-3159-4a0d-8d56-a09a1df31464:string:2022-05-01T00:00:00+08:00",
+ "semester": "c65a1ab2-c176-4b6e-be56-5bb3764a6bf3:string:2"
},
{
- "name": "2b6f7772-c78a-4811-a56a-17ca5a3deefa:string:Macroeconomics",
- "grade": "b0af22c7-d13d-43c5-8ac8-fcd6637ec8a0:string:A",
- "courseCredit": "4d818a85-4d04-4bfa-b73e-b43df160d103:string:4",
- "courseCode": "5822f8ab-d48f-4a9f-8e30-d848ffc87700:string:ECON 3040",
- "examinationDate": "10052e5c-d3df-47b9-a11e-a0d83198e0c6:string:2018-05-01T00:00:00+08:00",
- "semester": "68cc7114-5d35-4da2-b8f6-8ad39fd04ec7:string:2"
+ "name": "ef85d11f-259f-4500-bd6c-a5da319ed5ae:string:Macroeconomics",
+ "grade": "a19e89ae-0821-449d-aaa1-4846b62d6ca2:string:A",
+ "courseCredit": "27cb47ac-b88a-4bc3-ac26-9fac1ac7cd74:string:4",
+ "courseCode": "f90ceaf4-ead1-44af-bb19-b3628271c250:string:ECON 3040",
+ "examinationDate": "ed3cfe59-1486-4396-8dc8-df2c18b3fe57:string:2023-05-01T00:00:00+08:00",
+ "semester": "56514347-676f-4456-932d-2dcb86375bda:string:2"
},
{
- "name": "e7065d80-af02-42e1-b8b6-b48f913d06b1:string:Econometrics",
- "grade": "9479f20a-f110-4e03-825f-13b12be73485:string:A-",
- "courseCredit": "b209f219-34dc-48c8-a71a-d4badb4d8f05:string:4",
- "courseCode": "70367209-3258-4f62-95cc-0315db66b724:string:ECON 3120",
- "examinationDate": "ae9e2840-bccc-4ba8-a060-8e22eed94f98:string:2018-05-01T00:00:00+08:00",
- "semester": "4ceb11aa-0650-4969-ad75-2e0f56049f7f:string:2"
+ "name": "acc0fba2-2b12-4caa-a12a-06f2d2fc6846:string:Econometrics",
+ "grade": "aaca3809-4a95-4961-8149-f010355e9e31:string:A-",
+ "courseCredit": "5623f55d-28e8-4fe0-b949-272df61da394:string:4",
+ "courseCode": "0e325944-94c2-4ed7-ad44-7bddbe9a7027:string:ECON 3120",
+ "examinationDate": "2e651035-859f-439c-bac9-85bccdd85b30:string:2024-05-01T00:00:00+08:00",
+ "semester": "38769f99-6939-4cb7-a4b8-d1f2f69ff090:string:2"
}
],
"additionalData": {
- "merit": "84348d71-dc80-4ec2-aa66-353b21041786:string:Y",
- "studentId": "729faea9-0391-403c-af23-882808759a25:string:123456",
- "transcriptId": "731d01c8-64b8-403f-bac7-6fb690fcbf4a:string:001",
+ "merit": "5c7dd3b3-eda3-4f71-a545-232cc2400677:string:Y",
+ "studentId": "4e2d6495-4ba0-4d46-a1c1-1ac8e0f43c23:string:123456",
+ "transcriptId": "514a485d-b375-4eee-9b33-e945f6a958a2:string:001",
"certSignatories": [
{
- "signature": "fbfafa47-fc72-4be3-af4d-accfb1545cd2:string:data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeoAAAB8CAQAAAAMLDtbAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAAmJLR0QA/4ePzL8AAAAJb0ZGcwAAADEAAAABAAwXU4cAAAAJdnBBZwAAAokAAACMACzEPncAACu1SURBVHja7Z13nNTU2oCfbexSdukorgiCooAUC4rfVUHEggUErFevotj12nu5dlQUu1hAUKyoCIgKigURFQRsgCJKkd5ZYHfZNvN+f5wzs8lMkmmZybLMMz/LJpnk5Mw5yXvemkGi5JFPA3LIIZsc/FRRSRXl7KCYyoTPniZNmhjJiOnoZrRlX/ZlH/ZgD1rQlHxyHI4vZwcbWcda1rGKP1nEcvxe33KaNLWbyJM6kw4cQTcOohMtEr5eOYuZy2xmsQCf1zefJk1txH5SZ3E4x9OLw8i32OtjLSvYRik7KWUnO6kkl1zqkEsuuTSmGc1oSp7t+Uv4lqlM5U+vu2A3IZfmNKEJjcjVi6UyiimhhPWsoMLr5qVxD6tJvT/HczzH0tC0dS1+CtnEdaxgJaupiur8DWjGnuzH/vqfxmFHLGMSbzHX646ohWTQlm50ZT/a0JqWDg9wP6tZyhLm8SO/pSd4bSKDo3me5Yjhs4wxXE9vmgJjEYTOCV2jKSdwL1PZarqKsIh72MfrDqgl1OFo/sfXbA/p4+g+ZcxmGL0cdSVpajSBp3cPzuZMCoPbS/iGz/icRYZjj2AWMIKrXbluB47kGPrSPLitig8Ynn5nJ0BT+jOIXtTTf1fxG3NYyj8s5x/WI8EjM8klh3wa05h86tKMlrSjIx2DC6btTGMy4yn2+qbSxE4+w0xv5z95guOoY3nsPIRt1Hfx6pkcwcMsMVx/On287pJdkHoMZhqVug+LmcgtHE3dmM+Tw+HcxFdUBM80hmNitJGk8ZxMFusf8Cfu4EDHYy9GEAYnoRVH8DzbghN7Cgd53S27EF15niLdcxsYTT8H9WS0FHAGb1Cqz7qYC8ny+jbTxMJV/Mit7BvFkQ0oQfgiSe2oz+XM18OoipE09bpjdgF68bnusXLeoReZrp69EdeyMDixz09P7NrJmwg+9kra+TPoz2w9jNYzyOvbrdGcyA+6p5Zwm0E34Ta9+VFf51d6eH3TadznRAThxiRf5VT+0MNoHM28vuUaSWc+0z00j9OSvubN4Byt9/DxKNle33wad8liLcLspF8nm6v0OnFN+u0QQmNewYcg/MzpKbtqHZ7Uj5Fv0wuj2sZLCP4kCuDVFDJZW04He33TNYiBrNVr3IEp10oP0rbvP1Py+6dJGX0RhMtTdLUhWgP7lMsqoF2TJryPIOzkXnI9aUF7/kYQ/kgvi2oTuWxH+CRl1+vKXwjCmN1+Wh/JPwjCVPbzsBX7aK+GKWnrdW3ifYSdLthCo6UR3yAIo3brYXQTFQhFnOt1QziYMgThIq8bksY9LkMQjkvhFXN5D0F4aTed1jm8jiDMoa3XTQHgTgRhZdpuXXvYD0EYmtJrZvImgnCH1zfvAQ35EkF41sZ5N/XUYx2CcILXDUkp7XmC771uRPL4JyVmLTNZfIjg280GEuzBfIQSBnrdEBNPIQhPeN2MlHIjgtDa62YkizEIVTRI8VXr8C3CZtp4ffspZA9+R9hc42z1xyMIn3ndjJTShCqEIV43I1moVXXPlF93T9Yg/LTbxPqqKb2Sjl43JIy9EaQ2C6OWfIfwiteNSBYHIwi3enDl/6MK4W6vOyAl5PMLwqIamTyiOYIww+tmpJjna/M9Z1OKMN6Taw9DKOMAr7sg6WQzFWGJC8kek0Fb7Ttg3/qaotRzk+sRNnjdiOTxHcJKT65cl8UIM2q9cWskwibae90MGwYhCNdY7svnYn7lBa+bmAT+jSAUeNqGOrRL1qmfRhCPPIBVpFitVVgAcCXCTv7P62bY8hyC2KgsW+hwk5qlr3eDMxHEw+VQF16hiD+SdXr1zDrdo5v7GmFVHMl6dhW6UYavBk+KHDYgfGu7/1u2c4+raa9qBmchiEdZeToxKZgZ6JDkXEI5oDziye1BDwThFo+unmzyWZxy557YuBBBOMN2//4h6aVrC2pSH2mxp2VSr5vHI8H8cwu4z5Ag1GU2JzGxUWS+RliXQv/zVDIS4ecarGjKYwXCr7uhk+h/EIRDTdu6cDdz8CfR7NianxCECl6jU3JvcDrCuuRewoH+CMKVnl1fsTc3uq6H74mfshqdeFElSzjW62Z4gPJ5V9n8cjiOZ1gWFInvStI1e7MRQXg9Fb5sLyIITZJ/IUsyWYnwu0dXV7RhPcI6Grl4zjz+RLjZ0/ty5jQdMbc7osZ8K87hbVM5io28liRXrAuoQljNKam5wf8iCEel5mIWPIwgHOPZ9WGG/knvdPGc9yL8WIMjx7tRhPBHLVSCRcMUBAmublUOmMc5Omm/17n4EH5Kna9CHwTh0lRdLowDEIRXIxzVmkcZy/lJ6PYzgz/sfNfO2YIdnj4oI7E/6xG21ejFQXI4mIeCyTBVAsaZ3BohS36iDKQSYaat0jEJY3svnWbIOxYibHH0A+/PDv0jTHBZrZPBfAQfExEkikR8DdkzirO+gDAhuZ2WAB1YgVDJ8R624SBe5Acmp0xCy6AHj7PUMJ2LGc+FcSdz2oPJ3GdZRzaUruxE+NuipKQiSWO7yOM4HSWA2xfpOVkXj6lyXUiGUxCEJ/V/T4xw9N4s4OeIP2VbKhAOS03nxUwPNiP4uTCKY+tzPLeHaIkTJ5N7guWAyuiS9DtuwLOsMkznEgThPpujo/OaeCyoanuGF+lre1wBixF22Gq7kza2f/DMVVRxLILwqM3ebuxEEK4nn5kIOwzvyj0SvvZ0hA0UUIhEDDAp1Mn6Ii0VXvTUSBiJcQj+KP34Dk+CPjiD0Trl4bP6/ZRs8rRnnFDGePozEEH4j83RjzM1CnF8ijaKNaYcQZhFd8vjxiGIbSlKp7GdIKM99oTNpQxhls2+BQjCaAA64Ee4X+/rwnb+l9CVOyAI1wGwEWGSw7EFuiWvRniWN6UUqdE1SQZzcZRH5uGPS0Nej24cx3F0sciV+giCMJws4FeEiqiE2OhpYPHAWkYlUxisV7W3Ioit6+5MhFLOj3CVFQjCqRzGnwTKJYVPXSX/zbZZLTuN7YS5DUHo5mrXxsZchJ2WFSMeRBCWB4u6TkP4G4AsFqFqf4RPsit5l+uicPsYirBJn3t68MxWZOpn8/CI57wHYWMNdjmJjY0IH8VwfHNuYZYWJpWGeRbnGfb/Cx/Ch/qvoQjCSY5nLKRbDOk0erIUYUDI1j4mbclrCGIr5R3LJwg+znS4SgN9d5cA0CtYNsk8JXP0hD/c5iz2Y9sFzvbU/xuU75VYrDtaUBzStusRhM4AdGc1gvBNyLQ+QnfxZxH0iRksN4j9oxEqbFUV9yAI7wHQxEGqUZVPRnjYl+7yB8LUKI/N5SG9XjV/jJaVLxDKgvXCeuOcJe8c/eAWZrF3xOtnMgw/EnHxMxdhq+MRzyFsdVCiddatuk7/naUfT+bcBDchCJ/bnMN5bCfMEaYGesGtWpgJRfk8GcPZVVsv03+11I53U01vxleCw8nZq/woBAmun+7GPl7tYKoQ/qY+UIcZrLYN0jguinfPrsR8hClRHdk9WFdzA2O4hFPox+W8yl8Gp55M/sdXvBT8uwFVCN/ZnPEe06NhXgTdcA7vIggrODMYztuMtxkXEvaaTRmRcr3UZTvisLTrq9t0mWHbfdpE1jd4jg045RWKNLYTZA/PjVrKVnxVyNb6utK10fSSF6KqasqvCML44E+eyzaEr9mIUGxrSACV/2Je8C8Vr3awxXFZzEXw65/nZv2DTrT0wnscodSjqhvJYCHC+1Ecd6ZWGP3DpTEtPRYglFlKVJfqfp7NM1qd5KTcq89UvRirb9j2O4KwzSQAq7dsJD3BRJz8HANtM668M/gCQVinx4VKFbbYtr2Rx3aClKZEC2lPb0uF/uX6CW1mI8KXhr9bsBhBeEj/rSK/zuYCBOE222tmss4kLv0Lu2S5Six6Tv+VwfnaQLLMInRuGsJPHvak26xCeDniUVfiQ/DzdMweam9R7YVtpDWlCD5dFkpJcktsz5LBJwjCW6bHQ+DdKfxuSMWhgjki1XsdhiC27iL36kltVoe20qUg1QNDFXK+x+YM0Y3thPjD46F4qGlaBvgubEUG8AsSEl6uzPs+egGBKdg0ole5EpSrnev3x9rQUcgOhLWm4dqY8ahaWKFi+Fzc9EzznlJHMVTxb/wIxRZLkqMiLkTUoifcP0D17336r2ytPbHLxaoE9ekmB6ZM1iNM1PqaDsHtT4S9Ia24A0FsbeiBuqFHhGy/Vj9GOtFGH2FXWCnasZ0AUxC2uHWyODjEQne4F36E7WHP/tmE55e6EuXmmYVSeKln+iOmNXMoryD8YPi7kc2bfQTWcWQ34UeoDBnK0xF8tSandFMEiWAAO4oyhO0W0ckdKccfwVlWKWlD0yl1QhBWGQR5NW0ftzxHH3wIa0L02WqFei03hAjKnyNIxLjpWywnbYBResqGvsnr6/CQ9/SI/Cu4xxxcHOXYTsxvdDnQ2ENLtVoPn0NXw7Z+ZACTKQk51gdIyLaXmAccxAXAXsAKAJ1Q0TouJpuBwDjDliIqIGyd3IohwBKLNdhwLsVPNuNMT/25QCYv15Lkx0rjvNrhiBaMJ5dKTjE9IBX3UYcMWwFUoYZ9m5CtSugeTkVwywcAWhYzk6dLLl7MetN2tTRaqsdK9fTpAmxmbYQ7V2ambTZ7lWV9Xdj+EkYCMFBXSpumt+cwKe6xHTfKUp3kwG0HTtZPPuMkey9E4R9gLlbx38or7VeUCPMOAJlsRfjY8op9EfwhmSdWWyhQVJDev23afTuCsN7w3O+q7+TDWjGtTw0RXcP5CDuPqebaAdJHK4fvF6BijI3ksBWhOKTIxDKEKgtHFVVvIzwfqhKRu2tr8OBgq5SgHgkln9nZspXPgtXqt51JYx9Yc7+e0NiOE6U8SGWpPDOX6E7wGzym1yHstHAsWWOjU1SrlCNZb9DkT0TYZinFjCU88/MvVLtFKAopR1hh6RajeD/s532HgAmmm2f96RZXIPgcdPkXIwhjLfddGRzaznXTtiF8atqiHtCvhRynDFahfmAN2IC1e6VyMenI26bVuNKkPB/xzj9G2GlrRJtpWvGbWWyY1IHH2fr4xnZi4rcSRhL3pI6XwJsug2H6/9qyB/AdO0OOzKYF8I/FOV4E4CyaAZv0tllAgYUE0ogzgLdDtm6AkDitIdQBXqDKtuVXsxXobcjzdQ3LATiEOYyoIdUt42U/4B/KbfbmMxT4QwvLofQHNrEDIrhcroYQNw+lXAv9dX4BCAsWvZbmwGMW7zclQFfQHagMKi+V6iuyKrMDsBCfzV61ULV2cam26m8IRlS8TmJjOy4OQhBucOt0MTNSi7HVIssAG7VVd4PRwIyyT2/G6HTS21LHqBJDlIXZsN8K0VxnshyhNEJWmKsRhKWGt3lbHfihhM/x9N9l7dYf4eRPNtRBvqtHGcJEXePUKWvmNIRlpi1zELaHWbvPINybIptVCCssvfGVxKRq0FTHII5BEMu1uZG6+HCyZS9D2GGzwDo5+NtXyx+NdXXRGMe2G29q1yJEYuYwYJ12PnmWAgJP1HBfI6VL/dHiHOV8QkDRFVCwzEXAwhByKfBRmKvgRsxv6hNoDYyLYBcYxWpgX4MWfCmHBtd4mQxkIut5g/M97N94aQ+27hP7cAPwoY1d9URygS+1Y63Tu3oN5jd1PboBnxuUZIqV+qpGTqcQeCTsnQfobcpYVl2DRjlhLo1w3weQiVJ6WtGa1sBsKi33/hz8v2rj1FatdYh3bMdJucUqJlXUpVK/EZSpYATwJkJV0NW9mhkO1r8zgs/Iat+0vxAWhhyn1lUnh33/PoQyw98fRGXRhLsIdfgD6MsvJqWJICzgZS6kQw1Oc2QkiwqEK2z2voVQahtqoZxK2lGHIoS1Di6ewxHEYPJRK+pwZ0mVzGOOads3CFssRgkE7NEzEXYaHFW3IZRH7P8hjopjZVufaPvtLfrXNvdcYmM7LlYQveO+2ygf7JuAuszRYsq3CL+FHdkFJ9e75sHJU21ZVdHDjUzHfY6w1OKHVW4rAeNHHiUI66PIRtFWK/nCdRLHMdmUCSvwKWE2o7mNgXRzOfDQTVROeOvcJIfhx76udR7bERYASvPr5A2vMntWh2sob63wREuZVITohtWi8TGb8yovtArEsDpvhiD8GfHORyJsti0IpRZXH9h++1v9K5sXJomN7biYjRgEh9Ryr+G5uBerEUrZhvBu2JHvWzwBjfylu/Os4JbwUJFu2LkJDjZpLFUs7HNEg8p6dYHlvqYMZpKOyLH+rOYrXuR6TqZdjcrBrXrAOlZpMkKZrQuHkpnuNZzlTdurKB/paivuFwhFlu/SFQh+g37iaYQqW4PZeQScRKtdfw8PWevaMR9hss2+XoSbX80EXFP2D9me2NiOg0lIRIN8svgd0e4iAN0p1Z1yX8hxVyAIaxxS/4/T36wWrVVaxWGGYyYgFFt69Z6OUB1X/lJUKhXF6IgPgGyO5HY+MqXVsfpUsJSvGM3/uJCetHEwpiWfG7CrDdkZP04+4aqwjMqknsMWhJIQq3M1g0zyQA4lSNBpw4x601XbE1Y7TtDeukeXGB4Qyn8tkkGrAT7sCzy/q8/7lu33H9JHhDtzJTK24+BlhEpPKlCqqBlj8oG+OuLnW66mm353NeUZ/Ag+ejucKxDVWi0yNsZvEnaORhCetvy2egYHzr+K6OOtbovyDQDQguO5lheYxhJL0dz88bGS73iHR7mSE2iX0kn+EnZuGmMRfLbmuj2owBhLMNpBjgn0ekCW+j8EuzJQk1GeCIqOCPZJiQK+/ML1hm0qwvn2CPetWmSdGaUwmF1trO33r0EQS+VdImM7Dh5AiCabpvsMRfCHqAcuCll/TtfBd5EipIfoo4wBlCo0U3lj57EIodjGIq8Ec5Xxoj1C9JnGzkfiWr5ksS/Hcw3P8wUrdYC/86eSv/mMEVxHnyTXfYKvEMtCti0ox85TDwLBENVeZicg2CcLUCvjgM/e7Rg9scy8jCCcpv9SjjH25sZsKhC2m96XKl1gpIjlWxEqbB7njwV/iTdsv68WH8tt9sYwthN9giu/2T3YnOB5YqUBlwOfh6RxWQv4tdhULxgNW8xFDuoJqHY6Md7Fl3QBBnM/8BwHAA+GeAkHKAICRjFlBvs6yrtQT+XYfwMfy1gWFDbrcwDtaKM/rS3DGLNpZ6hrvJWFLGQh8/jJpLd3hwPAMsrtMuqAIdWBmUwuA0oNq+gvWceeHMderLE4Xv1WgeWQilm3Niap5WHgxXM0MNfB3LgHfuBrtpu2VV/RnsOBRZYuN025AlhHJi0c3IDV+Yts9sY7tuPgzBhWkG5yY5giC9Sz7kcOZwwr8SFUsJDHHX2IFUfpZ57RGUGZ9LfRRl9rlq0yqiFCIKr76Zj6Q/XeLy73TXO6cwY38zwfsyCYHdpuLT6PF7mITq6Zy1QeLqtKW4sRVtj2onpPjTZtU2armyyPr0O1K0YW2xA22pxZqdQCLlIrcM4Yp7Tu5kDGT4nGSLnMVrgermWQRYjB9h2KUsd949A/8YztODgGs9Y4NdRhFVapZS6kOmlDBrlRr/WV/1BxyNZZCAF/tfWOpcYrEJ4E4DOEyAF6Aa6OYU0dP005lEHcxLN8xgpbYb2Ij7jehWzah9j0gDK9PGr7PZWEz3z9bo4Pve0E8pSpuHq79EkqvOQBAPY2Ce1WrfdrnYTRHqwswc7Vsurgw9pffW92IvxFDvOw144HVvt26RpjGNvuiN8pq/WjuZFCsFgnZ0PQ30tsfY/DUT4+m0K2XsI3NKEFUMIAg549nI3spcW7fYGSqO0BKnPH8iT31mY2G3Jl1OdAOnAgnTnMlFmtIadxGrCCyUziawe/dWfaA2UWPtXKsjDR5lu96QFMCbHD/sJvdKErB2nbtZlN5GvxWyk4f7A5t/o1lHOvipJfZNv6J/VkyaSLIfm0ki4qcKINmWC5ULifPOB2KikGB/FbvVS22+yNYWwnKnR5Man34R5gooXDnJ9oKyWYUQ74oeLbArozGyjh1AgJ5zYE+6AlGELcI6FWRrOiPt4NSpjHm9xNfwrZi348wKcmA9Q+XM3nrObpOCtstEeJuKH0ArbaOjMq23S49lqplax11ZsIaDKUu8ZXNudWE62J4d/LbY4cQE/ge/xgSnSgJrVdmIaireFaRg7mQuALxgMl4JCJTZ2/2GZvvGM7LsoRW+VHcvgQodjSMHIhsWWbDnCwg/h2YBR1k6ai/KAyEUf9rpm6Wn9ZE/KddOZGPg1zdfmJITEPpJE2GutNDgsNpee2Ui+2pAphleXLZ7L+TjbbEUpsp0sWVcFf9xwEsZFPC1iJUEknfsHszvmjrZ6gGuWCFFo0KYdfEMq0Q8k4xMFHuyWCvbddDGM7cfVI9VsqNZzNAOAWS+f6SghJYBAdauBaazcXhYnl4awCWoM2Z5REPF5xGnnAD+4FzSXAfJ7kZJpwLEMNifoOZhSruN8xt2ooLcGiGFNzmoKFkyNAJk+AjUJsLV8ChZbr2bX6aj3IB76zFY99bAC91CgCsFlaDGdv4EUWMhPoaZgbSux17oUG+l7MPEJX4G4tve0AhzxBfsD+TR3D2E58Uq8nlZO6La8A03QUdChFQMc47kkJZZEnrx3LgAY00WvzaF02Vam515LTUXFRwXTuYj+OYmTQtNKE/7Gch6NOWtUSNXjNKDXjGstvXEJn4A2bFJZKn3y2xZ61qGGu3DnthO/AddWEWAVYZwA4k0uAddwLzAAaGZJVrDbcgx3qtzfnfx/MTcDUoLZ9G9hmGg2MG7tXQhFRj+1da1Ln8C4FbLLN5LwOyIsjXkX9yPFP6uUA7E8VOyHK4d+RvsBaBw8j7/iOy2jJOUzRa+MC7uQvLolqtOwJlIZtVW6MVgO2kGFAsW3lxgkUAwMtHpUrgQa0pj/g7BuwFmhKLvAXPqBj2BEH6rzZl7AV+AIfGAymq/UxTig5zxgB/h9GAf9wQVDDsBmnSa307Ttt9sYwtnetSf0C3aniLNtamypWJZI9MTNs2qmI5fgdaFSwfgdU/onospY8RgYwNAnOH+5QxjhOpiOvak1rC0YyO4py802wmtRKNG4etj2DV2gI3GmbprCUD4HmFitatQAbQBdgjW0UMwQkhL2Acn6GoHdZgL2YQj4wkk8A2MJsMES6KxenI3FCWbYDD4JcHuF1sthKX4MCdiNQ11b/rRaBdpM63rEdF48iSEoKu90T4kZoxSLEURCDQqaHOTGOMDh6xoNKiTsMFTPjCwnZtGKgVkTVpOgqOwoZGSxdV86dEdpchlVQg+qh8JgrFWk3zfHlooJrXgnbvieCsDbY9/aoSGaVTOAhhC2m9XFLXUXyT0PwiIp1D/jgtdd3b63S7EdLIEO35FpO4kZd4m4b/zIdqXKXNMcalZz4XNu7iG9sx4XKjxy5DFmiKO1iJD37iwhVDgqF09iEUB7y86jooETc4tdo3e41UTnjtGUrQpllsZ6ayQE6LEIQpjtmpSvDurDqMoTikPfIBfgRVkbIcpfJKoSNFjrr1cE2OWe0PRdB9LpcBWxUJ//ppsvLFunoMIVyBKl+OKlCPA9bnPvf+NjCaQTCdY2hsaGuPEdbONhUczyC2FZbi3dsx4WqJXVI4idy5FwqEd6OuFxQgXPWT6s8ntHd/WFICMpchMTqBn6GCjfcBx/h2UzM7M0SBImygHvNYWAwAHSNQ6r9MqyDFNW7b6ThF1RlDbaZMltbM8zGTTOQgXVyhO8rB8xALPwk/Z3WtGOYjnjbHhZdNd/kLKritHaEZWy5Hh/CFg4Fshhh8Nf7zGL6qQeKXeIHFcJ7CnbEN7bjorpeY45t7GuiDMGHMD4K/7cMFiD4LFZgPXR501IuCtu3BkESygX2OIKwD4FAP/ug9R76zfBAkvoqmRQwNiiGn2FzTHjqXkW+jnubx3X05WKdLnerbTULI531AyEU5S/uj+jc2gRj4Gx7XTi3OoB1VZh92SyyQ309Rn4xCM+tmIAgbDa80jpwEy/wgE2hnzz82Fcu+bfNoytAfGM7DvbUOZznspBKWw1mYlyLH+GjKNftp2phyvguOYhx+BCElRZ+UhlUIfgTcpk9i0Do30FUIfi4zUIh0pSndVztfUnpqVRwji7n5rNJ8bsIu8Tye+tpXf1ZEFIu1p5fEDaF/UJZfMrWiDW7ALZiTLs10BSRPsFS/G+LH2Oy/1P0CNrI/QzkYt6iDEGYE0Npe5W52672iCrN6ORhHvvYjpo8unM5L/G9rgBU/YlU6DN2snTc02sxTLmn9HP4ZU7lWK7iq6BQZL0abKKft4mwD4LwLBAI0xBW8DSn0o48GtCGsxir81fs4BzX+ymVdAimMr7EYq+qvdHR8pt5PMx2/d2V3ByDelWJvydGfXwo0xGTk093vqCSKmY4iLtfIJQa/AmH6EQF1R8fz8aYxvlHxMbHIjpiHdsR2ZNBPMUcm5R4P/BqAvpjaxrqQiWPxfStDB61iEVaw5U2K3Kl20y0auBqJBgocKl+ilt9JkdwYtgVaKrjlqrCjEOBVAcP2363Hr0ZQLcYs+W0wk8iNZjvQ/CHLA9zI0xIFRhrVPodxLjgxC5lbBQGvlDexz6aLBpiHdu25HIcj/Nb2DT+hXE8oKsuux6oDXTgd4Qqro3ju//H+7o8dyW/MoqBDm8FlQpnRgxnt0KVaQmIk/vySvCdFPjs5D1TGfNdmfp6WpeEafBV5cltrvsuzEbYHHelMRUiHFuBqBzWImwOSTqRxxGczJFxZgV7lNASBLETy9i2IJ+zec8QZl/CHEZzAyfRxvCknYkkIdLoAooRNtMngXM0oiCKN0IjruITizyNsaFSE91l2JLLKdzLm4znHR5kQNLUiN7QgO8Jte4qVGT09y4nMVYGo75xfrsOpYTW6YiMSpLkZgWaCxD8rkRbRTe2QzphABOCQuRCRjHE1vP0PUT71LpFfZ107rddqKZUA3ZgLqNT22nGcoTwbB/HagFxKYNc7A1VF3JM3N+fhsQQFKsooAhho4vFmg9DEC9KIB7Ic7q21GbeYXDEPB5PIVS56Bt1tFbEvG6Zbavm8qyt8qi20k2r/kJX1vcGZbuH4zqvNT8jbI1bAFcVUmP1RXgYIZBfxQ3q40dSrSjtwyf49fqvX5QdeAuCxBXyGE5dnsaPUOTgLldTack2hK02mt/aySX6nRy6wjxPO6qcEddZrVGWY2PZo07cwJQo1Wf5lGBl63amEZsQSl30mFyG8KCLvWKBUSo/hOH0AlbzNCPDqt3bcx5vAj2YnXBrTuUZ2gLfc17Sk/wkgyGMAjbzAJNZTSMK6Ua+NnTVVj7jBGB4WAhpFj3ozAdxx74pk5Eff/DfbZkJvMlgWtCHPvTRgY6ltIgqhv1prqOCzjGWqPkvzwLjXXs8TeB0voii0poL1GOUfkPfGfMyXiUxTzT5YFtt4dzBtbtIITgr7g8zN5S7uCKrWWTRgL04Vbs+ePWpoojZfMy7vMozPMydXMvFnMUJdGd/mhukzZaUInwZ4+jK1sWRTnep1+5A2J7cEa7e1HWZySHAQgZFUQYslEJWAQ9G5dljTSNu5zrygE+50jHFX83nNB43hQbAwGAWyJpHAYUU0pImNKExTWhMY/KpQy51qEMdcmw0rJlkRTUwyymlnDIqqKSSKv3OBRVhLICQRWbwk0E2OSGfRJVtJRRRRBGXM4AHgftj9OfrxVdksIaOMUiv9vTmS6BLFAXs40b9ZEO5A5hLb4ucFdGwmSZMZEBc383jv9xBY2AZtzhkRd6VOJLDaQlsYAlzbPJ9eENT9mM/9qMdhRRS6KKZbSoL2MhmtrCNbexgB8WU6BQ98ZNLb/pxmkljs5qp/MkycqinP3WD/82ngAIKyLco+dqdX/mJg4BrYgxQfJErgNdc8azOp4hMLrcIJXUNNamX0YYqDjRkp4qN6fRkSRwZR+pyKbdSCBQzlCdjSOqbJnpa0pWudKE9+zlGegtFbA5OyyJ2UEwxO9jJTsrYSTkVlFNBBT58VOFD8CNAKbn0jyvloz1NOZV+nBB87FQxm6ncRgNm24RLmMmigAIa0pCGNKIhDXmV9XRgNvnAcO6wKf5uRT4LaQX8x6EKZ/QspCNvc56rvWWBz+DiGA/PEpr+PDL53KYT5VcwIqEIqTRW7M25DOcLNtisRTfxExN4nju4kOPpyp4JGCX/xs1A0gIuYIophmoUZ+g0QF8jlMVt1gI4XSd8WKDTIEVHT6oQdkQdgOLECIRNyU+PsR6hMoFa9JciCN2jPr4dT2lHtyrGxBTlkiYS7bmE11lmMY3X8BUvcQP96eyyB8CXRK4JGQ1Z9OfDYOE3YSEP0920qlf1SROL3h8UrEC5hAc4IspHxJ0I/rhclkNR+U+OSfxEzrypu3CvOL+vgtAjVQUEyKIvH2l9aTljXHnypQEoYBBjWBcykSuYyyiu5qiY0vzGymSEuxM8xz48YKjCPZebLV8y/RASL7F+rI5pDzg/RxPflMHrhjL0iZBPGZLMNbWisxZ2NjAkLtGmDmVIxLyY7RkaTECznSdccldJU4+zmRQSFriJCdxED3eLkdvyCYFSdfFxIh8HDWNLeDDEemCkOUIi0VoBGjIqmHetMuWZ4iYgFCXfX3JIUCRZxZ1xZDmaiVim11e04kZd5UAQFnG9Q6LUNLHQief1QibwZp7B3XRPsaV/CtXJgmIjm/8wX7d9By9GyNgJsBYxVAZLhAN4i0rEg2IKgxDEFVE+AoebgitncTc9YrAQqqLa4eL7/tzMzGAEaAXvu131fjemJ9NM0/lTLooij2kymI/E4dabyxU6JERYyDVRRnXNRGyLyMVOC66zzKiWXLJZhbAiFXJUFpcGc1qoTzEzeIKzo4iVUmud6joKufRhmM7BqD4/cJUbKdHSAHAY3xj6dj5XJXXN7EwGpUiMkeLZXMpKrSr9IEKVKjOvIUh8WT5qELchiEXd1qSQST/GW+Tt2MRnPMkl/Mtm8DTDj/AceRzNHUzV0TvqM4+7EtCspwmlMa8GZR8/45OvR43AvgiiSxdFQwZns1ivZl/TpeOi554YLS01k/qsZkSy5CprJ8D6HMdJnKTrJ4eynuWsYi3b2UYFkEEDCriKepSSbcjCUM5MPmZCjSgAV3voyRu00v//KXfzs9cN4nJeYhEdojz6cJ6nO1DJ6zzioIex41zeBk7VtTR2XRq64nQaB/tzIc8z2yHjltWngjkM56TUVdPdjbgyqCVe6pKBJXEmIVG6XTZjJH4EP2PjztSmUt67kgp39yaHrgzkJl7gU35mMWvYFjQImD8fcUx6MieN+4L9/EyM/nvJozGliEUCwnDOZwuCMCcqN087lE/EVV7f9u5BQ3wI47xuRi3mmqCN383UA4lyM8KGiN4NzRiPIKzj4lgza4XQxRX3kzRR8jNiW7swTaL01IL3phpVgSubpURO6Hey9nQb7YJ/QncE4VKvb3x3QaXd33VSBe5K5Gl9cVEcuaaTyZUIVY62jQzuxo+w3lDvORFUkbmLEz9RmmhQ5Vkv8LoZtZIrtOh9utcNMdGA9YhjOGJ9PkAQZrrmFKwKHJ2S+InSRIOyVcea2i1NNMxDEN7wuhkhvIBQyYG2+/fU1bNGJRQsaUaVTk6kQmmamFhI4uVr0oTTRPte7Zv4qVzkRAThcdv9rfgLQbjX1au+hCAeucPuloxAEENJsTTuoFI7Tve6GSYKWYOw0jYhUmPtJJxI9JYVsxCKvL753Ym+vMFltTZ7pnecmYQ3XmLU5yeEKtvCq5l8heB+yd5cnRE0TZpdHKWCrDm1P+rwCYJ9peVA4v13XL/yyQjmSpRp0uySHJeq+NuoyOVjBOF926jt/SlHWO5yiTyAsQie1KJKk8ZdVEn757xuBgD5TEUQZjhUd1beYwNdv3ZzyhAWeN0FadIkTgabkbgTOLvJPtpI9Z2Db9i++BAWJuHqwxGEC73uhDRp3OANhFiLprtPb+3u+aVjfq3bkqTWa6vf07tPseA0tZq+CMK3CQZDJEI2Q7X3+RgHwRvQ4rnbqRsy+ArBb6tvT5Nml+NnBOFyj65+mPZpq+S6iMcuiTETSnTcjiAM9+j+06RJAr11VdIjUn7lhjyj39F/cFgUxxchiMtR9YPwI8wy5NVJk6YWoNREG1Jq0MnlBjbpfDbDo5yo611/U3enFGEVLVN452nSpIBsbR8uSlGqwVwuD6bw/dghwX4os1xW6h3EOoQtdErJXadJk1Lq8rl+a96e5HT9jbmFNcEExH1i+q6SKB5zqSXHUoRQ5MGyI02alJDDq3qqTU9a+OGhvBpM8byEy2IuStMJQdjsSha18yhH2MShSbrXNGlqBBcEK4a+QjtXz9yaO1gQTG44gwFxygOTEIRHEmxNXZ7Ej/CHy3eZJk0NpBVv6XT+Pj7i5IRTEGRwCPdqo5US799M6N3Yiu0IvoRsyv/SCZw+T8dOp9ldOJQPgjnAtzCaM+KIY8/hYP7LB2w0JHmexX9pkXDrzsGPUBSVCSycJjyFD8HPU2n/sTS7F215yFBe3s98xnAdx9LaYSo04ED6cTMjmWMqf1vBNK6ljWttU84iW+kX4/ca8YBeXqzw3C12F8U7t8M07pDB4ZzCSRxiUmj5WMMWiiiiCj9+8mhAfZqyZ1g45E5+ZgbTmUmJyy27hwcAYQR3R5mrpCVXcJ0OFRnLtV4VpkmTpmZQn17cwuvMMdWrtv7sZBGTGMZguiS14PoQXbBpI7dHWBwUcC4TqQwuAbwu+rdLk35T10YKaMWeNKEJ9alDDlBJJSVsZQsbWM2mlLWkK2/TEYByvmQqc1jIjuDeLNrQicPoSY+gA+hf3MX7XndgmjRp7Mnheu1oGvhsYwl/8Cfrg4o+0Zr8KZyeVMkhTZo0LpHHxXxjU1JRdKjIQy4q6XZz0uJ3mlTRlF70oDP70oL6ZFDCJv7hD+Ywg2VeN6428f+zem0pSBJbegAAAABJRU5ErkJggg==",
- "name": "5f86bcfb-a52a-4697-a806-fd68c225d1d1:string:John Demo",
- "position": "1bf12b69-b7b6-4a20-a8fa-d6a0006c67d0:string:Dean of Demos",
- "organisation": "e0285c90-9112-435c-9b63-554db2aa2e15:string:GovTech Singapore"
+ "signature": "a3eb99fd-815a-45f2-aba1-215e718449b7:string:data:image/png;base64,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",
+ "name": "ef197275-c8fd-416a-99dd-91067bf1c93b:string:John Demo",
+ "position": "85bbf9c9-c53e-49bd-87a1-0c41cbac50fd:string:Dean of Demos",
+ "organisation": "4b5dc2c7-938c-426c-8928-8dfc53845fb9:string:Opencerts"
}
]
}
},
"signature": {
"type": "SHA3MerkleProof",
- "targetHash": "19c0d479a6add68df9aa7714f37361b9df44c8a4fbb48d50fb043149228407c8",
+ "targetHash": "20c9ab71b6bc1a8be738c82dcd054c713eba78856c2b9457a344da3d59769eb6",
"proof": [],
- "merkleRoot": "19c0d479a6add68df9aa7714f37361b9df44c8a4fbb48d50fb043149228407c8"
+ "merkleRoot": "20c9ab71b6bc1a8be738c82dcd054c713eba78856c2b9457a344da3d59769eb6"
}
}
diff --git a/public/static/demo/rinkeby.opencert b/public/static/demo/rinkeby.opencert
deleted file mode 100644
index 948094801..000000000
--- a/public/static/demo/rinkeby.opencert
+++ /dev/null
@@ -1,93 +0,0 @@
-{
- "version": "https://schema.openattestation.com/2.0/schema.json",
- "data": {
- "id": "d1f765ac-0856-4074-8294-1dae32988834:string:53b75bbe",
- "name": "2ed9de1c-df52-4946-b2e7-219bef20ba20:string:GovTech Demo Certificate",
- "description": "1beec655-b83b-48d3-93b6-c1ddfbbb77ff:string:GovTech Demo Certificate",
- "issuedOn": "d095ad8d-0810-4423-9c8e-e5233336631b:string:2019-05-29T00:00:00+08:00",
- "admissionDate": "3d9fa0c9-3cc6-4fc4-ba7b-613e17da083c:string:2017-08-01T00:00:00+08:00",
- "graduationDate": "e2002c04-8b2f-4ecf-9d02-c1866f39c807:string:2022-08-01T00:00:00+08:00",
- "$template": {
- "name": "4dc3e48e-7285-4435-bf32-6378f61a6b11:string:GOVTECH_DEMO",
- "type": "728970ca-8caf-4586-b0bd-b6ba7df4d319:string:EMBEDDED_RENDERER",
- "url": "546a1178-105a-4dab-b021-9462b92701c9:string:https://demo-renderer.opencerts.io"
- },
- "issuers": [
- {
- "name": "b72d08d5-890a-4000-977f-bb5107b22a0e:string:GovTech Singapore",
- "url": "3e11696d-c2dd-471a-b1d1-be6c0f0c6b9f:string:https://tech.gov.sg",
- "documentStore": "24408684-97f5-4ba1-8c8b-e8378f62a62f:string:0x7Ee2B9a0043Bda975398477695ba5c2361acC50C",
- "identityProof": {
- "type": "2c7bdc9c-6498-453d-87c3-1f0745b5daca:string:DNS-TXT",
- "location": "2d44fff0-b631-454a-91e5-d354bc9a2f96:string:example.openattestation.com"
- }
- }
- ],
- "recipient": {
- "name": "2a866773-8b7c-448a-9e88-8e52570c9fe5:string:Your Name",
- "nric": "b280bbc3-99e5-4be4-ab1f-f60a4bf9efce:string:SXXXXXXXY",
- "course": "5fd5ca5a-5c08-4dcd-ab0a-73218881bfe6:string:GovTech Demo"
- },
- "transcript": [
- {
- "name": "c078c0fb-f221-4906-a5f2-d4ee99c0edd7:string:Introduction to Programming",
- "grade": "5aa1d704-3c2a-4b56-ad7d-098d53e9984e:string:A+",
- "courseCredit": "44d456ac-7aae-4e05-aa77-7c23f8197407:string:3",
- "courseCode": "24b6fe9c-9dec-4779-926e-ec8c0a2f55af:string:CS 1110",
- "examinationDate": "362e8bd8-0d7d-4d6a-af55-90180bf327b9:string:2017-12-01T00:00:00+08:00",
- "semester": "0fec2ad3-8751-4bbc-924c-48d18f66d024:string:1"
- },
- {
- "name": "b43c97ba-67a6-423b-99b8-cbce4b544c41:string:Object Oriented Programming in Java",
- "grade": "b3dc4e15-2119-4b76-b2d9-6c5ed7df7ccf:string:A+",
- "courseCredit": "d0240781-055a-4e51-8206-703220506816:string:4",
- "courseCode": "8fb72ddf-8886-4a7e-87e3-709025a54ad3:string:CS 2110",
- "examinationDate": "f8f63532-0a79-476b-b010-1b9ae869e61d:string:2017-12-01T00:00:00+08:00",
- "semester": "c0dabeae-134f-4aac-afee-715172a542c9:string:1"
- },
- {
- "name": "9e0af4ae-b6b6-4235-a475-c437128e6b84:string:Microeconomics",
- "grade": "05b4eab1-29cf-426b-aaaa-e7c6d252f704:string:A+",
- "courseCredit": "f14af2f7-e745-4734-ae4b-12370f8b51bd:string:4",
- "courseCode": "b00d96e9-03ad-4490-b0e3-557db5942211:string:ECON 3030",
- "examinationDate": "22bb05a0-96b6-40e0-87a9-7166ec38b336:string:2018-05-01T00:00:00+08:00",
- "semester": "7633e620-d706-4e4d-a792-55f6deda08c6:string:2"
- },
- {
- "name": "ae9e29d8-5a27-4b53-a155-b40e9a7515b2:string:Macroeconomics",
- "grade": "478be516-ddc6-42e0-b16f-a427ee1bacd5:string:A",
- "courseCredit": "f7321df9-e76e-466b-b3b2-7bfc6fa9a555:string:4",
- "courseCode": "ccd7f719-0de5-4be1-8388-ac0933037464:string:ECON 3040",
- "examinationDate": "928ee17a-c991-4975-8eeb-c7a26ca98997:string:2018-05-01T00:00:00+08:00",
- "semester": "b65075b8-26fc-419d-9e0a-a404965a7407:string:2"
- },
- {
- "name": "6d6efa6e-ca40-4fc3-9c76-2ecc85ff7978:string:Econometrics",
- "grade": "b963aa27-09e6-4d2f-b7b1-9ca5683d8ddb:string:A-",
- "courseCredit": "8b47425b-0a60-4c8a-be70-78a526031b0d:string:4",
- "courseCode": "fd5328de-3784-4870-9f8c-ae9ee14a7815:string:ECON 3120",
- "examinationDate": "d6b3602f-4ea1-4526-a742-90fda8202b38:string:2018-05-01T00:00:00+08:00",
- "semester": "814a35d1-d77e-4148-830e-ab5e0d85e533:string:2"
- }
- ],
- "additionalData": {
- "merit": "88460023-31ec-4225-b5c3-5e5c9af938a1:string:Y",
- "studentId": "b0cfb87e-edae-4a0b-8440-d78e92dc9ea3:string:123456",
- "transcriptId": "13c41f6b-3046-4dd8-aa3e-6c4da2f88825:string:001",
- "certSignatories": [
- {
- "signature": "4164dbc7-4355-462d-8719-ee69837b31c5:string:data:image/png;base64,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",
- "name": "2702eb6d-6d96-4dbc-b8a3-9df8757f1537:string:John Demo",
- "position": "ef940f1d-eaaf-4636-ae21-7600321ef5c2:string:Dean of Demos",
- "organisation": "8105cc70-e930-4978-a33c-35683dd704cb:string:GovTech Singapore"
- }
- ]
- }
- },
- "signature": {
- "type": "SHA3MerkleProof",
- "targetHash": "675d9c6887e1e87de4e13ccf140795169fa777b8d637407f6651c567d424a46f",
- "proof": [],
- "merkleRoot": "675d9c6887e1e87de4e13ccf140795169fa777b8d637407f6651c567d424a46f"
- }
-}
diff --git a/public/static/demo/ropsten.opencert b/public/static/demo/ropsten.opencert
deleted file mode 100644
index dea11d66b..000000000
--- a/public/static/demo/ropsten.opencert
+++ /dev/null
@@ -1,93 +0,0 @@
-{
- "version": "https://schema.openattestation.com/2.0/schema.json",
- "data": {
- "id": "c3eaaff0-be1b-44d6-a686-0dd313f3f74f:string:53b75bbe",
- "name": "b8275e90-35dc-47cc-b610-2bd1f5596c63:string:GovTech Demo Certificate",
- "description": "e5a63441-fa0c-407b-a4b4-2c12308844da:string:GovTech Demo Certificate",
- "issuedOn": "17cde367-5bdf-4e7d-b247-74556f631e37:string:2019-05-29T00:00:00+08:00",
- "admissionDate": "43d45748-e4d5-4310-8ae9-9500c6faa111:string:2017-08-01T00:00:00+08:00",
- "graduationDate": "218b3feb-d96d-4a0d-8ab9-e9510d0ccb64:string:2022-08-01T00:00:00+08:00",
- "$template": {
- "name": "cfe91df9-b118-4cdd-86b0-a8c9b5eaefe0:string:GOVTECH_DEMO",
- "type": "77ed5e5f-d427-4068-9821-20792ed9494f:string:EMBEDDED_RENDERER",
- "url": "201464fd-9971-4299-b317-76b49ee86b6e:string:https://demo-renderer.opencerts.io"
- },
- "issuers": [
- {
- "name": "1894d984-225c-434d-b923-38cb96213ea4:string:GovTech Singapore",
- "url": "09a3cf30-09ea-4ad5-9567-4110d0167620:string:https://tech.gov.sg",
- "documentStore": "6bf70b4b-6af6-41cc-8d7e-bbf47ded03cb:string:0x532C9Ff853CA54370D7492cD84040F9f8099f11B",
- "identityProof": {
- "type": "cb04ba9c-364e-4272-9b90-760842c0e66a:string:DNS-TXT",
- "location": "3376155f-b77f-477b-b50e-483574dee5e9:string:example.openattestation.com"
- }
- }
- ],
- "recipient": {
- "name": "88bb8b05-5883-4a04-9a75-034d4210a1fe:string:Your Name",
- "nric": "aaf1c8a2-9d32-429d-b9c6-97220e4551d0:string:SXXXXXXXY",
- "course": "d5f28bdd-8bac-47a4-9181-e616e2b708af:string:GovTech Demo"
- },
- "transcript": [
- {
- "name": "a83fed13-2cf2-49ff-b6b5-60c80f063d04:string:Introduction to Programming",
- "grade": "1d416c00-3ff4-44a4-a369-3625d3fa0962:string:A+",
- "courseCredit": "0988fc40-e324-4b66-a73f-9aa20f67bf6b:string:3",
- "courseCode": "f25fde9f-36e0-42ba-b121-5bb08eeb8fae:string:CS 1110",
- "examinationDate": "3f183039-d18a-41de-8325-aeb90bf90746:string:2017-12-01T00:00:00+08:00",
- "semester": "23a68621-7ba5-4e72-9ed3-b8448c6f3087:string:1"
- },
- {
- "name": "2652d9dd-d296-4533-bcee-06cbd7c36c21:string:Object Oriented Programming in Java",
- "grade": "311a9ab6-1738-4149-a118-9bb21fe4fd44:string:A+",
- "courseCredit": "ecb69d75-8d2b-4b3d-ad32-9c3890b1e423:string:4",
- "courseCode": "5f72123e-82dd-4ac8-b0e4-8e317825c9e4:string:CS 2110",
- "examinationDate": "532d49d6-76c8-4b7d-a752-147d8858079d:string:2017-12-01T00:00:00+08:00",
- "semester": "62035fff-9ca8-4d90-8f70-bbb7ca6c9215:string:1"
- },
- {
- "name": "b38a46c0-efde-4a06-8de6-b439f1b5c456:string:Microeconomics",
- "grade": "70c5d622-7ccd-4d1d-a0ba-22368090477e:string:A+",
- "courseCredit": "76649af1-93df-4d41-800b-875c916d8c5d:string:4",
- "courseCode": "eb8f271c-73a4-4cc6-ae49-c5b5c155bae3:string:ECON 3030",
- "examinationDate": "11b26999-0f4e-4294-a651-f27a89c6e994:string:2018-05-01T00:00:00+08:00",
- "semester": "b4963ecb-9edb-4cf3-8072-f71b1050471c:string:2"
- },
- {
- "name": "bc0fd298-ff75-4405-a778-8fec1c69134b:string:Macroeconomics",
- "grade": "0494aa5b-e2ba-4140-9291-da61e63fbf83:string:A",
- "courseCredit": "2afe7716-16b3-4998-8313-dcbbbbb1a4e3:string:4",
- "courseCode": "6af0eb32-d37e-4cb8-abe7-99c3fffd18a1:string:ECON 3040",
- "examinationDate": "ac492caf-c4c9-474c-bbfd-4df8cc1bc792:string:2018-05-01T00:00:00+08:00",
- "semester": "ba1e6819-0e42-4a17-8ee9-c10363064f6b:string:2"
- },
- {
- "name": "e7ba65af-e484-495d-a5d2-92c866111ce1:string:Econometrics",
- "grade": "a7438344-cf4e-4048-ac2e-57744593e93e:string:A-",
- "courseCredit": "94e02275-1e1c-451c-8e80-ab8c20d7b5cd:string:4",
- "courseCode": "340fac2c-8c6b-405b-9007-9827ad6264ac:string:ECON 3120",
- "examinationDate": "6b7afb7a-0a18-43c1-b5d1-e9bae6879a33:string:2018-05-01T00:00:00+08:00",
- "semester": "c1ec2180-0b54-4ff7-b207-e47239dd3a3a:string:2"
- }
- ],
- "additionalData": {
- "merit": "a887c2cd-45c3-4333-b14b-f4852c00b13c:string:Y",
- "studentId": "e4b2d737-a39f-44f8-bfd8-f463587f2708:string:123456",
- "transcriptId": "9dde789b-d53d-481d-9922-ad2bc5fe9d48:string:001",
- "certSignatories": [
- {
- "signature": "89376c09-9587-44bd-a105-98e9469ea17f:string:data:image/png;base64,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",
- "name": "97551bd3-4898-48ba-b1f3-4dde001b86ea:string:John Demo",
- "position": "d498b60d-6a90-44f1-89b1-10cce4c76549:string:Dean of Demos",
- "organisation": "56a93529-0787-4856-80d5-7b6f825fd9d9:string:GovTech Singapore"
- }
- ]
- }
- },
- "signature": {
- "type": "SHA3MerkleProof",
- "targetHash": "2e6c87da2cd13302f67aca1835e2b3bda6dca3b037bfdf4492d47502798a8406",
- "proof": [],
- "merkleRoot": "2e6c87da2cd13302f67aca1835e2b3bda6dca3b037bfdf4492d47502798a8406"
- }
-}
diff --git a/public/static/demo/sepolia.opencert b/public/static/demo/sepolia.opencert
index dc64316fa..43393aef0 100644
--- a/public/static/demo/sepolia.opencert
+++ b/public/static/demo/sepolia.opencert
@@ -1,93 +1,92 @@
{
"version": "https://schema.openattestation.com/2.0/schema.json",
"data": {
- "id": "53a4cb23-4ea3-47da-893e-b0945489a667:string:53b75bbe",
- "name": "4b40143e-30ad-4ac0-87ee-4440a93bba4d:string:GovTech Demo Certificate",
- "description": "3d2c1e24-b8b0-4b9b-8d9a-85d8c2c775c4:string:GovTech Demo Certificate",
- "issuedOn": "387f48ef-8b71-4627-be1c-62d77a36f512:string:2019-05-29T00:00:00+08:00",
- "admissionDate": "ae712b81-4855-4849-bded-4834f607d017:string:2017-08-01T00:00:00+08:00",
- "graduationDate": "0462e0ee-80ba-42e1-bf5c-91f134c225b0:string:2022-08-01T00:00:00+08:00",
+ "id": "34b67664-b535-4887-9e2b-7ebbf839cf5a:string:53b75bbe",
+ "name": "74ca9e34-ac4a-4be0-a4b0-e4e83aac7610:string:Opencerts Demo Certificate",
+ "description": "737d2566-7f76-4669-a096-96237c6ce43a:string:Opencerts Demo Certificate",
+ "issuedOn": "374a9625-d990-4e37-807f-d7b98e9f6c50:string:2025-05-29T00:00:00+08:00",
+ "admissionDate": "f33ddd25-b43d-42e5-a352-7b02e7c58446:string:2020-08-01T00:00:00+08:00",
+ "graduationDate": "f21328db-1a0d-4100-8b46-bd8ae52692c6:string:2025-08-01T00:00:00+08:00",
"$template": {
- "name": "e96b534a-5cec-44ce-8fa9-8ad431f4df48:string:GOVTECH_DEMO",
- "type": "1bac0fa3-1c2c-4c85-8ec8-d506631fb139:string:EMBEDDED_RENDERER",
- "url": "bb197475-1748-44f5-929d-01031000c0a0:string:https://demo-renderer.opencerts.io"
+ "name": "741eff4b-d704-43ad-8396-61b575bbf3c1:string:OPENCERTS_DEMO",
+ "type": "482f37ce-f659-4e78-ac41-9a34e8fc332a:string:EMBEDDED_RENDERER",
+ "url": "82afbb59-1e49-46b1-a37d-9bb3c32f93d5:string:https://demo-renderer.opencerts.io"
},
"issuers": [
{
- "name": "d01cde7a-a3bf-49a9-b6ff-66aed3ce5dea:string:GovTech Singapore",
- "url": "1a5b2738-0d65-4108-8664-3bde6397e1c2:string:https://tech.gov.sg",
- "documentStore": "6fe8ee83-32d6-4564-bf7f-130dd5af5b15:string:0x80ca96D2Aab5E1E23876a4D8140Ee1292327a4cd",
+ "name": "a47d419a-3581-49ef-8ea4-6f7c75cfcbc0:string:Opencerts",
+ "documentStore": "c90e3ff4-03ef-473b-bb60-1b4a1811cb14:string:0x9b0c63fD8924398D677d9c5Ae7E228864D4e47e0",
"identityProof": {
- "type": "559d5876-f8b6-4829-b107-37df5d68be5e:string:DNS-TXT",
- "location": "1d11137a-5e9b-4fb7-92e5-6b9973318962:string:demo-opencerts.openattestation.com"
+ "type": "3b7b9c18-75d8-42e3-9d6f-9810970daa9d:string:DNS-TXT",
+ "location": "7ea92472-e104-42f4-a6f8-8cfb4cab5f6d:string:dev.opencerts.io"
}
}
],
"recipient": {
- "name": "d89f89f0-468d-4079-ace3-69d7e1bdf6a5:string:Your Name",
- "nric": "de514e21-7be2-47f1-ab5f-b7443c261d7d:string:SXXXXXXXY",
- "course": "b8dd7225-4e55-489b-adb3-bddc4054f3e5:string:GovTech Demo"
+ "name": "34e355f3-b93a-4cc8-a8c2-8753e4c09e42:string:Your Name",
+ "nric": "469f9d0c-d1e5-4c6b-b902-48eb18e84708:string:SXXXXXXXY",
+ "course": "9ba5f35f-cfb0-4f7f-98d4-8854477c6bd3:string:OpenCerts Demo"
},
"transcript": [
{
- "name": "4542f190-7e1b-468b-a9fc-f02e3c0ed6f9:string:Introduction to Programming",
- "grade": "05bd4812-24c7-431a-8db0-5588c049ec71:string:A+",
- "courseCredit": "6c5c7efa-856d-4a07-90b4-3435eabcef03:string:3",
- "courseCode": "6f489056-0f5b-4902-9fc0-6ba510a650d4:string:CS 1110",
- "examinationDate": "5953dcaf-1403-4110-8a99-4d03d1408606:string:2017-12-01T00:00:00+08:00",
- "semester": "05d8d3c3-807f-4b21-8a27-354005edeb6a:string:1"
+ "name": "68d730e4-555d-4543-ab03-00361d175fd2:string:Introduction to Programming",
+ "grade": "1d051b44-db8a-4cea-9539-a37b346196f1:string:A+",
+ "courseCredit": "f6d746f1-b8e1-42c6-bb4b-a6bc0fd59b9b:string:3",
+ "courseCode": "bf3e4c54-d441-419e-9caf-1cf36a09fa59:string:CS 1110",
+ "examinationDate": "cc2bf9c8-c01a-411c-9d54-e12430d99ff8:string:2020-12-01T00:00:00+08:00",
+ "semester": "a2c9dd8f-8c7e-47f5-8d0b-f79fe19983eb:string:1"
},
{
- "name": "6f3b585d-5f23-42ac-87a3-85de8115f0a8:string:Object Oriented Programming in Java",
- "grade": "783dcfd6-05da-4ee8-855d-ad1600250555:string:A+",
- "courseCredit": "936f8ad1-f032-403b-895d-880f8e6d228f:string:4",
- "courseCode": "390328f5-0849-49ed-aabb-5a39b44ffc1c:string:CS 2110",
- "examinationDate": "36810bcb-093d-40fe-a6da-5f6b1ea3e077:string:2017-12-01T00:00:00+08:00",
- "semester": "d7c81aab-8163-4400-893c-684efb43b071:string:1"
+ "name": "91ebf853-51f3-4779-81fb-895b85aad886:string:Object Oriented Programming in Java",
+ "grade": "06e7eca0-12c8-4f68-86fb-b88e728db5a7:string:A+",
+ "courseCredit": "a8462ceb-682f-4695-9099-1097536c2572:string:4",
+ "courseCode": "ccef18cf-f828-4f54-827e-a37d9e804a0b:string:CS 2110",
+ "examinationDate": "76c90d1c-ea3d-4dd0-bdfc-5db767d28918:string:2021-12-01T00:00:00+08:00",
+ "semester": "6a72a3d0-b07d-411b-88a6-c7a47c16849c:string:1"
},
{
- "name": "cf5a51a8-42a8-45e5-ac46-bec2a6d8024f:string:Microeconomics",
- "grade": "40ef86c0-d0ec-4156-8930-9f3906e91cf9:string:A+",
- "courseCredit": "fb443bc1-9c81-4ca3-aa23-5416b845966e:string:4",
- "courseCode": "2a24647a-4ba6-4947-9d00-9d2370bebc31:string:ECON 3030",
- "examinationDate": "f15ce78f-91fe-447d-97b7-0fe9044e01ee:string:2018-05-01T00:00:00+08:00",
- "semester": "9a9d208f-e221-4428-ad91-5143bfdde937:string:2"
+ "name": "28ce0cec-3835-4d0c-9309-3f60190aaec5:string:Microeconomics",
+ "grade": "f1645a98-8a05-4cf2-bdad-fea2c90af74e:string:A+",
+ "courseCredit": "886d487c-e19d-42bc-8efb-084941af86e1:string:4",
+ "courseCode": "b4cf8821-3e6f-4e7c-8033-fcbe988ed2ec:string:ECON 3030",
+ "examinationDate": "856ce521-1aa7-4562-8e39-ff33a5bf0403:string:2022-05-01T00:00:00+08:00",
+ "semester": "0a9e159b-91da-4fc1-8d7f-569cd2d9c33b:string:2"
},
{
- "name": "700b5e7c-191a-4af4-abd8-d7a094c169af:string:Macroeconomics",
- "grade": "e2a0a279-9387-49a3-9d43-307b8ba6c2dd:string:A",
- "courseCredit": "453e82e7-21c1-408f-8bfa-14fcfc45d037:string:4",
- "courseCode": "0a062f2a-8fc7-482a-a01b-e1cc24f7809b:string:ECON 3040",
- "examinationDate": "a001f4c1-ea22-49bf-b9ee-974ea0f893df:string:2018-05-01T00:00:00+08:00",
- "semester": "7c74196b-3a04-43ad-aad9-d9a670dd131f:string:2"
+ "name": "5b945c66-e539-48af-b106-0f622a9ac4c2:string:Macroeconomics",
+ "grade": "08d0499f-d989-4b0f-8c6f-f6c018ff80f8:string:A",
+ "courseCredit": "802b19d7-265d-41c8-b61b-8f0cdcf0ad49:string:4",
+ "courseCode": "87233a30-f0be-4be4-81af-6ab42c1032a7:string:ECON 3040",
+ "examinationDate": "8702d23b-3163-431c-b72a-eae6330197dd:string:2023-05-01T00:00:00+08:00",
+ "semester": "76a4b7af-6856-4741-86ce-c304e3eb6c02:string:2"
},
{
- "name": "6a367aad-851b-4f25-b4a5-94b95c9dd8fb:string:Econometrics",
- "grade": "39113218-3e0d-4c59-ba0e-0a79da432b8d:string:A-",
- "courseCredit": "f1845a0a-2ae7-4afe-801f-15c942d42ee2:string:4",
- "courseCode": "87a62154-705e-47b3-a2aa-d70b43f8ac90:string:ECON 3120",
- "examinationDate": "9b700ddf-8c20-4301-b822-199cd955216b:string:2018-05-01T00:00:00+08:00",
- "semester": "2229386d-fc64-4af4-ab49-510386a2b0f1:string:2"
+ "name": "3f340649-c881-47a0-97e1-7d7052076f06:string:Econometrics",
+ "grade": "5d93d25f-f690-4c08-b063-00320bef71fe:string:A-",
+ "courseCredit": "aafcccbf-2039-4052-b806-87367f940c88:string:4",
+ "courseCode": "44f5e4bc-f360-4f1a-8588-db17d432bb92:string:ECON 3120",
+ "examinationDate": "1f77127e-47b4-4ee9-9b8a-92e4852beed1:string:2024-05-01T00:00:00+08:00",
+ "semester": "8f13baa1-61cc-4582-8508-f45251c7a3ad:string:2"
}
],
"additionalData": {
- "merit": "1c6860d7-b04f-404c-a241-2decf41d3ffa:string:Y",
- "studentId": "d3fabbf1-5570-45bf-ac13-727bcac32b4f:string:123456",
- "transcriptId": "7e4d8647-d2c0-40d5-97ba-ea6b878c97e4:string:001",
+ "merit": "e5e82b57-3f53-4d3d-a766-2c04ab3b9ff8:string:Y",
+ "studentId": "c7409db0-38a9-41a7-b87f-0e50b6ac6004:string:123456",
+ "transcriptId": "8b330dd4-5e1b-4130-b1a9-96ef5e0716dd:string:001",
"certSignatories": [
{
- "signature": "5c752df4-1f7c-40e6-8e79-a6de71dc0a3f:string:data:image/png;base64,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",
- "name": "86403d9e-52ed-4df4-ac31-3597eeffa4b1:string:John Demo",
- "position": "b5bdbd21-f324-41df-a36f-e91c72e0627f:string:Dean of Demos",
- "organisation": "53f4ecdb-a9e1-4589-a5d5-fe86aea56b67:string:GovTech Singapore"
+ "signature": "21bb987a-38d5-4940-ae7a-f9070446f60b:string:data:image/png;base64,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",
+ "name": "122ae92d-65b7-4fd0-bd93-78dd4be59ccc:string:John Demo",
+ "position": "470b52ee-c009-4a69-9705-96207659d66c:string:Dean of Demos",
+ "organisation": "d342af14-2ed2-4d86-935b-2b8bdc2ea45b:string:Opencerts"
}
]
}
},
"signature": {
"type": "SHA3MerkleProof",
- "targetHash": "1d5f3827b764f92a7a32e7376d271d370a2793e8244578c5e93356d68dd39a2a",
+ "targetHash": "05368694045e5641c2be5a7eeb94b345745e77f6267f37e188af7d487a5d0e66",
"proof": [],
- "merkleRoot": "1d5f3827b764f92a7a32e7376d271d370a2793e8244578c5e93356d68dd39a2a"
+ "merkleRoot": "05368694045e5641c2be5a7eeb94b345745e77f6267f37e188af7d487a5d0e66"
}
}
diff --git a/public/static/registry.json b/public/static/registry.json
index 10eecb72b..745b7ec9f 100644
--- a/public/static/registry.json
+++ b/public/static/registry.json
@@ -1,7 +1,7 @@
{
"issuers": {
"0x007d40224f6562461633ccfbaffd359ebb2fc9ba": {
- "name": "Government Technology Agency of Singapore (GovTech)",
+ "name": "ROPSTEN: OpenCerts",
"displayCard": true,
"website": "https://www.tech.gov.sg",
"email": "info@tech.gov.sg",
@@ -64,7 +64,7 @@
"phone": "+65 6592 1136",
"logo": "/static/images/SIT_logo.png",
"id": "sit-registry"
- },
+ },
"0x78CE67fcb40D9D9552A313670A2e0eef11043995": {
"name": "SkillsFuture Singapore",
"displayCard": true,
@@ -356,11 +356,11 @@
"displayCard": false
},
"0xdcA6Eea7024151c270b50FcA9E67161119B06BAD": {
- "name": "ROPSTEN: Government Technology Agency of Singapore (GovTech)",
+ "name": "ROPSTEN: OpenCerts",
"displayCard": false
},
"0x532C9Ff853CA54370D7492cD84040F9f8099f11B": {
- "name": "ROPSTEN: Government Technology Agency of Singapore (GovTech)",
+ "name": "ROPSTEN: OpenCerts",
"displayCard": false
},
"0x5AA6bF8F748cD2D8f1949eD328B2bEa61CE2B6d7": {
@@ -400,27 +400,27 @@
"displayCard": false
},
"0x7Ee2B9a0043Bda975398477695ba5c2361acC50C": {
- "name": "RINKEBY: Government Technology Agency of Singapore (GovTech)",
+ "name": "RINKEBY: OpenCerts",
"displayCard": false
},
"0xb3db78c0cc3622e078622C8395095a7B95415Acf": {
- "name": "GOERLI: Government Technology Agency of Singapore (GovTech)",
+ "name": "GOERLI: OpenCerts",
"displayCard": false
},
"0x49b2969bF0E4aa822023a9eA2293b24E4518C1DD": {
- "name": "GOERLI: Government Technology Agency of Singapore (GovTech)",
+ "name": "GOERLI: OpenCerts",
"displayCard": false
},
"0x80732bF5CA47A85e599f3ac9572F602c249C8A28": {
- "name": "AMOY: Government Technology Agency of Singapore (GovTech)",
+ "name": "AMOY: OpenCerts",
"displayCard": false
},
"0x71D28767662cB233F887aD2Bb65d048d760bA694": {
- "name": "SEPOLIA: Government Technology Agency of Singapore (GovTech)",
+ "name": "SEPOLIA: OpenCerts",
"displayCard": false
},
"0x80ca96D2Aab5E1E23876a4D8140Ee1292327a4cd": {
- "name": "SEPOLIA: Government Technology Agency of Singapore (GovTech)",
+ "name": "SEPOLIA: OpenCerts",
"displayCard": false
}
}
diff --git a/src/components/Analytics/analytics.test.ts b/src/components/Analytics/analytics.test.ts
index c8bce306d..dd6225679 100644
--- a/src/components/Analytics/analytics.test.ts
+++ b/src/components/Analytics/analytics.test.ts
@@ -152,7 +152,7 @@ describe("analytics*", () => {
document_store: `"0x007d40224f6562461633ccfbaffd359ebb2fc9ba"`,
issued_on: "a date",
registry_id: "govtech-registry",
- issuer_name: "Government Technology Agency of Singapore (GovTech)",
+ issuer_name: "ROPSTEN: OpenCerts",
nonInteraction: true,
value: undefined,
});
@@ -196,7 +196,7 @@ describe("analytics*", () => {
document_store: `"0x007d40224f6562461633ccfbaffd359ebb2fc9ba"`,
issued_on: "a date",
registry_id: "govtech-registry",
- issuer_name: "Government Technology Agency of Singapore (GovTech)",
+ issuer_name: "ROPSTEN: OpenCerts",
nonInteraction: true,
value: undefined,
});
diff --git a/src/components/CertificateVerifyBlock/CertificateVerifyBlock.test.tsx b/src/components/CertificateVerifyBlock/CertificateVerifyBlock.test.tsx
index 6fcadcac5..2f8804596 100644
--- a/src/components/CertificateVerifyBlock/CertificateVerifyBlock.test.tsx
+++ b/src/components/CertificateVerifyBlock/CertificateVerifyBlock.test.tsx
@@ -280,7 +280,7 @@ describe("certificate verify block getV2IdentityVerificationText", () => {
{
status: "VALID",
value: "0xdcA6Eea7024151c270b50FcA9E67161119B06BAD",
- name: "ROPSTEN: Government Technology Agency of Singapore (GovTech)",
+ name: "ROPSTEN: OpenCerts",
displayCard: false,
},
],
@@ -291,7 +291,7 @@ describe("certificate verify block getV2IdentityVerificationText", () => {
.toMatchInlineSnapshot(`
- ROPSTEN: GOVERNMENT TECHNOLOGY AGENCY OF SINGAPORE (GOVTECH)
+ ROPSTEN: OPENCERTS
`);
diff --git a/src/components/Collaborate/CollaboratorsTerms.tsx b/src/components/Collaborate/CollaboratorsTerms.tsx
deleted file mode 100644
index 07a6e1be2..000000000
--- a/src/components/Collaborate/CollaboratorsTerms.tsx
+++ /dev/null
@@ -1,175 +0,0 @@
-import React from "react";
-
-export const CollaboratorsTerms: React.FunctionComponent = () => (
- <>
- Collaborator terms and conditions
-
-
- General
-
-
- These Terms and Conditions (the "Collaborator Terms" ) govern your request to be listed as a
- collaborator ("Collaborator" ) for, and be hyperlinked in, the OpenCerts Service
- (collectively, the
- "Collaboration" ).
-
-
- You unconditionally agree and accept to be legally bound by these Collaborator Terms and any amendments
- thereto from time to time. GovTech may change these Collaborator Terms immediately at its sole discretion
- and at any time. You agree to receive notice of any amendments to the Collaborator Terms via email, or any
- other means of notice as determined by GovTech.
-
-
- You agree to these Collaborator Terms by making a request to GovTech to be listed as a Collaborator (whether
- through FormsSG or otherwise), or by making a pull/merge request to GovTech in which you have included code
- to list you as a Collaborator or included code which contains your details as a Collaborator.
-
-
-
-
- Terms of Collaboration
-
-
- Subject to these Collaborator Terms, GovTech shall have the sole and absolute discretion to list you as a
- Collaborator on the OpenCerts Service and provide a hyperlink to your website or to allow your pull/merge
- request to contain your details as a Collaborator.
-
-
- GovTech shall not be obliged to provide you with reasons for accepting or rejecting you as a Collaborator,
- and shall have the right to revoke and/or discontinue the listing, the hyperlink, the code, and your status
- as Collaborator at its sole and absolute discretion and at any time.
-
-
- These Collaborator Terms does not create any relationship of agency, partnership, joint venture or other
- business relationship between you and GovTech.
-
-
- GovTech does not endorse you and you shall not represent in any manner any endorsement, association or
- affiliation with GovTech and, without prejudice and in addition to GovTech’s other rights at law, shall not
- make use of any of GovTech’s logos, trade marks, service marks, names, insignias, emblems to suggest any
- such endorsement, association or affiliation.
-
-
- You agree to comply with any Collaboration Rules as may be published by GovTech from time to time. The
- Collaboration Rules are to be read in conjunction with these Collaborator Terms and form part of these
- Collaborator Terms. A breach of the Collaborator Rules by you may result in immediate termination of the
- Collaboration.
-
-
- You shall grant to GovTech a perpetual, irrevocable, royalty-free licence to use, display, modify, adapt,
- create derivative works of, reproduce and sublicence 2 any intellectual property provided to GovTech for the
- purpose of the Collaboration ("Collaborator IP" ). You further warrant and represent that you
- have the capacity, authority and right to license the Collaborator IP to GovTech.
-
-
- GovTech may, at its sole and absolute discretion, terminate these Collaboration Terms and the Collaboration
- or any part thereof immediately without giving any reasons and without liability to you whatsoever.
-
-
-
-
- Disclaimers and Indemnity
-
-
- To the fullest extent permitted by law, GovTech does not make any representations or warranties of any kind
- whatsoever and hereby disclaims all express, implied and/or statutory warranties of any kind to you or any
- third party, whether arising from usage or custom or trade or by operation of law or otherwise, including
- but not limited to any representations or warranties as to the accuracy, completeness, correctness,
- currency, timeliness, reliability, availability, interoperability, security, non-infringement, title,
- merchantability, quality or fitness for any particular purpose, or that the Collaboration will be error-free
- or that defects will be corrected.
-
-
- GovTech shall also not be liable to you or any third party for any damage or loss of any kind whatsoever and
- howsoever caused, including but not limited to any direct or indirect, special or consequential damages,
- loss of income, revenue or profits, lost or damaged data, or damage to your computer, software or any other
- property, whether arising directly or indirectly from –
-
- the Collaboration and/or the Collaboration Terms, or any part thereof;
- any discontinuance of the Collaboration or any part of the Collaboration, howsoever caused;
-
- any inaccuracy or incompleteness in, or errors or omissions in Collaboration or the Collaboration Terms;
-
-
- any delay or interruption in the Collaboration, whether caused by delay or interruption in transmission
- over the internet or otherwise; or
-
-
- any decision made or action taken by you or any third party in reliance upon the Collaboration or the
- Collaboration Terms,
-
-
- regardless of whether GovTech has been advised of the possibility of such damage or loss.
-
-
- You shall not rely on any part of the Collaboration or these Collaboration Terms to claim or assert any form
- of legitimate expectation against GovTech, whether or not arising out of or in connection with GovTech’s
- roles and functions as a public authority.
-
-
- You agree to defend and indemnify and keep GovTech and its officers, employees, agents and contractors
- harmless against all liabilities, losses, damages, costs or expenses (including legal costs on an indemnity
- basis) howsoever arising out of or in connection with these Collaborator Terms or your non-compliance with
- the Collaboration Terms (including without limitation defending and indemnifying GovTech against losses
- arising out of or in connection with any intellectual property infringement claim), whether or not you had
- been advised or informed of the nature or extent of such liabilities, losses, damages, costs or expenses.
-
-
-
-
- Rights of Third Parties
-
-
- A person who is not a party to these Collaborator Terms shall have no right under the Contract (Rights of
- Third Parties) Act or otherwise to enforce any of its terms.
-
-
-
-
- Assignment
-
-
- You may not assign or sub-contract these Collaborator Terms without the prior written consent of GovTech.
-
-
- GovTech may assign, novate, transfer, or sub-contract the rights and liabilities in respect of the
- Collaboration and Collaboration Terms, without notifying you and without further reference to you. Your
- acceptance of these Collaborator Terms shall also constitute your consent to such assignment, novation,
- transfer or sub-contract.
-
-
-
-
- Governing Law and Dispute Resolution
-
- These Collaborator Terms shall be governed and construed in accordance with laws of Singapore.
-
- Subject to clause 6.3, any dispute arising out of or in connection with these Collaborator Terms, including
- any question regarding its existence, validity or termination, shall be referred to and finally resolved in
- the Courts of the Republic of Singapore and the parties hereby submit to the exclusive jurisdiction of the
- Courts of the Republic of Singapore.
-
-
- GovTech may, at its sole discretion, refer any dispute referred to in clause 6.2 above to arbitration
- administered by the Singapore International Arbitration Centre ("SIAC ) in Singapore in accordance
- with the Arbitration Rules of the SIAC ("SIAC Rules" ) for the time being in force, which
- rules are deemed to be incorporated by reference in this clause. Further:
-
- The seat of the arbitration shall be Singapore.
- The tribunal shall consist of one (1) arbitrator.
- The language of the arbitration shall be English.
-
- All information, pleadings, documents, evidence and all matters relating to the arbitration shall be
- confidential. Where GovTech is the defendant or respondent, it shall be given at least 30 days before
- the commencement of any legal action against it to elect to exercise the right herein to have the
- dispute submitted to arbitration. This right to elect shall not prejudice GovTech’s right to a
- limitation defence and the period to exercise the right shall not be abridged by reason of any accrual
- of a limitation defence in favour of GovTech during the said period.
-
-
-
-
-
-
- >
-);
diff --git a/src/components/Layout/FooterBar.tsx b/src/components/Layout/FooterBar.tsx
index 6dd4468a2..90667bd70 100644
--- a/src/components/Layout/FooterBar.tsx
+++ b/src/components/Layout/FooterBar.tsx
@@ -7,16 +7,6 @@ export const FooterBar: React.FunctionComponent = () => (
-
Support
@@ -35,11 +25,6 @@ export const FooterBar: React.FunctionComponent = () => (
Documentation
-
-
- Blog
-
-
diff --git a/src/components/Layout/NavigationBar/NavigationBar.tsx b/src/components/Layout/NavigationBar/NavigationBar.tsx
index 31aec0b6a..86c56234f 100644
--- a/src/components/Layout/NavigationBar/NavigationBar.tsx
+++ b/src/components/Layout/NavigationBar/NavigationBar.tsx
@@ -3,11 +3,11 @@ import { useRouter } from "next/router";
import React from "react";
const navItems: { id: string; label: string; path: string }[] = [
- {
- id: "collaborate",
- label: "Collaborate",
- path: "/collaborate",
- },
+ // {
+ // id: "collaborate",
+ // label: "Collaborate",
+ // path: "/collaborate",
+ // },
{
id: "faq",
label: "FAQ",
diff --git a/src/components/Privacy/PrivacyContent.tsx b/src/components/Privacy/PrivacyContent.tsx
index 42bc68937..ae43e56ca 100644
--- a/src/components/Privacy/PrivacyContent.tsx
+++ b/src/components/Privacy/PrivacyContent.tsx
@@ -4,131 +4,107 @@ export const PrivacyContent: React.FunctionComponent = () => (
-
Privacy Policy
+
OpenCerts — Privacy Policy
This Privacy Policy must be read in conjunction with the Terms of Use that accompany the applicable service
you are requesting from us (the "Service"). In this Privacy Policy, "Public Sector Entities"
means the Government (including its ministries, departments and organs of state) and public authorities (such
as statutory boards).
-
-
- Insofar as the Service consists of or is provided to you through a website, please note that:
-
-
-
- We may use "cookies ", where a small data file is sent to your browser to store and track
- information about you when you enter our websites. The cookie is used to track information such as the
- number of users and their frequency of use, profiles of users and their preferred sites. While this
- cookie can tell us when you enter our sites and which pages you visit, it cannot read data off your
- hard disk.
-
-
-
-
- You can choose to accept or decline cookies. Most web browsers automatically accept cookies, but you
- can usually modify your browser setting to decline cookies if you prefer. This may prevent you from
- taking full advantage of the website.
-
-
-
-
-
-
- We may request certain types of data from you in connection with your access or use of the Service. The
- data that may be requested include those identified in the Annex herein. Your data may be stored in our
- servers, systems or devices, in the servers, systems or devices of our third party service providers or
- collaborators, or on your device, and may be used by us or our third party service providers or
- collaborators to facilitate your access or use of the Service. We or our third party service providers or
- collaborators may collect system configuration information and/or traffic information (such as an IP
- address) and/or use information or statistical information to operate, maintain or improve the Services or
- the underlying service of the third party service provider or collaborator. For the avoidance of doubt, in
- this Privacy Policy, a reference to a third party service provider or collaborator includes other third
- parties who provide a service or collaborate with our third party service provider or collaborator.
-
-
-
- If you provide us with personally identifiable data:
-
-
- We may use, disclose and process the data for any one or more of the following purposes:
-
-
- to assist, process and facilitate your access or use of the Service;
-
-
-
- to administer, process and facilitate any transactions or activities by you, whether with us or
- any other Public Sector Entity or third party service provider or collaborator, and whether for
- your own benefit, or for the benefit of a third party on whose behalf you are duly authorized to
- act;
-
-
-
-
- to carry out your instructions or respond to any queries, feedback or complaints provided by (or
- purported to be provided by) you or on your behalf, or otherwise for the purposes of responding to
- or dealing with your interactions with us;
-
-
-
-
- to monitor and track your usage of the Service, to conduct research, data analytics, surveys,
- market studies and similar activities, in order to assist us in understanding your interests,
- concerns and preferences and improving the Service (including any service of a third party service
- provider or collaborator) and other services and products provided by Public Sector Entities. For
- the avoidance of doubt, we may also collect, use, disclose and process such information to create
- reports and produce statistics regarding your transactions with us and your usage of the Services
- and other services and products provided by Public Sector Entities for record-keeping and
- reporting or publication purposes (whether internally or externally);
-
-
-
-
- for the purposes of storing or creating backups of your data (whether for contingency or business
- continuity purposes or otherwise), whether within or outside Singapore;
-
-
-
-
- to enable us to contact you or communicate with you on any matters relating to your access or use
- of the Service, including but not limited to the purposes set out above, via email, push
- notifications or such other forms of communication that we may introduce from time to time
- depending on the functionality of the Service and/or your device.
-
-
-
-
-
-
-
-
- Please note that we may be required to disclose your data by law, including any law governing the
- use/provision of any service of a third party service provider or collaborator.
-
-
-
-
- To safeguard your personal data, all electronic storage and transmission of personal data is secured with
- appropriate security technologies.
-
-
-
-
- You may withdraw your consent to the use and disclosure of your data by us with reasonable notice and
- subject to any prevailing legal or contractual restrictions; however, doing so may prevent the proper
- functioning of the Service and may also result in the cessation of the Service to you.
-
-
-
-
- The Service may contain links to external sites whose data protection and privacy practices may differ
- from ours. We are not responsible for the content and privacy practices of these other websites and
- encourage you to consult the privacy notices of those sites.
-
-
-
-
This version of the Privacy Policy is dated 26 April 2018.
+
Insofar as the Service consists of or is provided to you through a website, please note that:
+
+ 2.1. We may use "cookies", where a small data file is sent to your browser to store and track
+ information about you when you enter our websites. The cookie is used to track information such as the number
+ of users and their frequency of use, profiles of users and their preferred sites. While this cookie can tell
+ us when you enter our sites and which pages you visit, it cannot read data off your hard disk.
+
+
+ 2.2. You can choose to accept or decline cookies. Most web browsers automatically accept cookies, but
+ you can usually modify your browser setting to decline cookies if you prefer. This may prevent you from taking
+ full advantage of the website.
+
+
+ We may request certain types of data from you in connection with your access or use of the Service. The data
+ that may be requested include those identified in the Annex herein. Your data may be stored in our servers,
+ systems or devices, in the servers, systems or devices of our third party service providers or collaborators,
+ or on your device, and may be used by us or our third party service providers or collaborators to facilitate
+ your access or use of the Service. We or our third party service providers or collaborators may collect system
+ configuration information and/or traffic information (such as an IP address) and/or use information or
+ statistical information to operate, maintain or improve the Services or the underlying service of the third
+ party service provider or collaborator. For the avoidance of doubt, in this Privacy Policy, a reference to a
+ third party service provider or collaborator includes other third parties who provide a service or collaborate
+ with our third party service provider or collaborator.
+
+
If you provide us with personally identifiable data:
+
We may use, disclose and process the data for any one or more of the following purposes:
+
+ 4.1. to assist, process and facilitate your access or use of the Service;
+
+
+ 4.2. to administer, process and facilitate any transactions or activities by you, whether with us or
+ any other Public Sector Entity or third party service provider or collaborator, and whether for your own
+ benefit, or for the benefit of a third party on whose behalf you are duly authorised to act;
+
+
+ 4.3. to carry out your instructions or respond to any queries, feedback or complaints provided by (or
+ purported to be provided by) you or on your behalf, or otherwise for the purposes of responding to or dealing
+ with your interactions with us;
+
+
+ 4.4. to monitor and track your usage of the Service or our websites, to conduct research, data
+ analytics, surveys, market studies and similar activities, in order to assist us in understanding your
+ interests, concerns and preferences and improving the Service (including any service of a third party service
+ provider or collaborator) and other services and products provided by Public Sector Entities. For the
+ avoidance of doubt, we may also collect, use, disclose and process such information to create reports and
+ produce statistics regarding your transactions with us and your usage of the Services and other services and
+ products provided by Public Sector Entities for record-keeping and reporting or publication purposes (whether
+ internally or externally);
+
+
+ 4.5. for the purposes of storing or creating backups of your data (whether for contingency or business
+ continuity purposes or otherwise), whether within or outside Singapore; and/or
+
+
+ 4.6. to enable us to contact you or communicate with you on any matters relating to your access or use
+ of the Service or our websites, including but not limited to the purposes set out above, via email, push
+ notifications or such other forms of communication that we may introduce from time to time depending on the
+ functionality of the Service and/or your device.
+
+
+ We may share necessary data with other Public Sector Entities, and third party service providers in connection
+ with the Service, so as to provide the Service to you in the most efficient and effective way unless such
+ sharing is prohibited by law. We will not share your personal data with entities which are not Public Sector
+ Entities, except where such sharing is necessary for such entities to assist us in providing the Service to
+ you or for fulfilling any of the purposes herein.
+
+
+ Please note that we may be required to disclose your data by law, including any law governing the
+ use/provision of any service of a third party service provider or collaborator.
+
+
+ To safeguard your personal data, all electronic storage and transmission of personal data is secured with
+ appropriate security technologies.
+
+
+ You may withdraw your consent to the use and disclosure of your data by us with reasonable notice and subject
+ to any prevailing legal or contractual restrictions; however, doing so may prevent the proper functioning of
+ the Service and may also result in the cessation of the Service to you.
+
+
+ The Service may contain links to external sites whose data protection and privacy practices may differ from
+ ours. We are not responsible for the content and privacy practices of these other websites and encourage you
+ to consult the privacy notices of those sites.
+
+
+ Please contact trustvc@imda.gov.sg if you:
+
+
+ 10.1. have any enquiries or feedback on our data protection policies and procedures; or
+
+
+ 10.2. need more information on or access to data which you have provided to us in the past.
+
+
This version of the Privacy Policy is dated 10 September 2025.
diff --git a/src/components/TermsOfUse/TermsOfUseContent.tsx b/src/components/TermsOfUse/TermsOfUseContent.tsx
index 653992b24..e93dcc8d0 100644
--- a/src/components/TermsOfUse/TermsOfUseContent.tsx
+++ b/src/components/TermsOfUse/TermsOfUseContent.tsx
@@ -1,11 +1,10 @@
-import Link from "next/link";
import React from "react";
export const TermsOfUseContent: React.FunctionComponent = () => (
-
Terms of Use
+
Terms of Use — OpenCerts
General
@@ -18,25 +17,24 @@ export const TermsOfUseContent: React.FunctionComponent = () => (
- This Service is provided to you by the Infocomm Media Development Authority (IMDA).
+
+ The Service is provided to you by the Infocomm Media Development Authority of Singapore
+ ("IMDA"). IMDA's office is located at 10 Pasir Panjang Road #03-01, Mapletree Business City,
+ Singapore 117438.
+
By accessing or using any part of this Service, you unconditionally agree and accept to be legally
bound by these Terms of Use and any amendments thereto from time to time. IMDA reserves the right to
- change these Terms of Use at its sole discretion and at any time.{" "}
-
- You should read the Terms of Use carefully each time you access or use any part of this Service as
- such access or use will constitute your agreement to the Terms of Use and any amendments to it.
-
+ change these Terms of Use at its sole discretion and at any time. You should read the Terms of Use
+ carefully each time you access or use any part of this Service as such access or use will constitute
+ your agreement to the Terms of Use and any amendments to it.
-
- If you do not agree to these Terms of Use, please do not use this Service or any part of this
- Service.
-
+ If you do not agree to these Terms of Use, please do not use this Service or any part of this Service.
@@ -45,7 +43,6 @@ export const TermsOfUseContent: React.FunctionComponent = () => (
Nature of this Service
-
Please see the Schedule for more information and terms concerning this Service.
@@ -99,7 +96,7 @@ export const TermsOfUseContent: React.FunctionComponent = () => (
You will not interfere or attempt to interfere with the proper working of the Service or otherwise do
- anything that imposes an unreasonable or disproportionately large load on IMDA’s servers.
+ anything that imposes an unreasonable or disproportionately large load on IMDA's servers.
@@ -112,20 +109,19 @@ export const TermsOfUseContent: React.FunctionComponent = () => (
The Service may require, enable or facilitate access to or use of software or services of a third
- party (Third Party
- ). In such an event, there may be terms of use of the third party software or service (the{" "}
- Third Party Terms ). IMDA may be required under or as a result of the Third Party Terms to
- notify you of certain terms that apply to you (either directly as an end user, or as a party whose
- acts or omissions could cause IMDA to breach the Third Party Terms) when you use the Services. An
- example of Third Party Terms may be open source software terms or standard form terms of the
- distribution platform from which you obtain any part of the Service (e.g. Google Play Store or Apple
- App Store terms) which bind IMDA as a developer or user of the distribution platform (the{" "}
+ party (the Third Party ). In such an event, there may be terms of use of the third party
+ software or service (the Third Party Terms ). IMDA may be required under or as a result of the
+ Third Party Terms to notify you of certain terms that apply to you (either directly as an end user, or
+ as a party whose acts or omissions could cause IMDA to breach the Third Party Terms) when you use the
+ Services. An example of Third Party Terms may be open source software terms or standard form terms of
+ the distribution platform from which you obtain any part of the Service (e.g. Google Play Store or
+ Apple App Store terms) which bind IMDA as a developer or user of the distribution platform (the{" "}
Distribution Terms ). Information on the Third Party Terms are embedded in the Service, already
- accounted for in these Terms of Use, publicly available (e.g the Distribution Terms) or otherwise
+ accounted for in these Terms of Use, publicly available (e.g. the Distribution Terms) or otherwise
listed in the Schedule herein. For the avoidance of doubt, insofar as this Clause 4 relates to the
Distribution Terms, the relevant Distribution Terms are the terms of the specific platform from which
you obtained a copy of the software or application that is part of the Service. For example, if you
- obtained the said copy from the Google Play Store, then the relevant terms are Google’s Distribution
+ obtained the said copy from the Google Play Store, then the relevant terms are Google's Distribution
Terms.
@@ -245,10 +241,10 @@ export const TermsOfUseContent: React.FunctionComponent = () => (
- your access to or use of this Service, or any part thereof;
+ your access to or use of the Service, or any part thereof;
- any loss of access to our use of this Service or any part of this Service, howsoever caused;
+ any loss of access to our use of the Service or any part of the Service, howsoever caused;
@@ -427,14 +423,16 @@ export const TermsOfUseContent: React.FunctionComponent = () => (
be confidential.
+
+
+ Where IMDA is the defendant or respondent, it shall be given at least 30 days before the
+ commencement of any legal action against it to elect to exercise the right herein to have the
+ dispute submitted to arbitration. This right to elect shall not prejudice IMDA's right to a
+ limitation defence and the period to exercise the right shall not be abridged by reason of any
+ accrual of a limitation defence in favour of IMDA during the said period.
+
+
-
- Where IMDA is the defendant or respondent, it shall be given at least 30 days before the commencement
- of any legal action against it to elect to exercise the right herein to have the dispute submitted to
- arbitration. This right to elect shall not prejudice IMDA’s right to a limitation defence and the
- period to exercise the right shall not be abridged by reason of any accrual of a limitation defence in
- favour of IMDA during the said period.
-
@@ -509,9 +507,9 @@ export const TermsOfUseContent: React.FunctionComponent = () => (
agree to the terms at any time, IMDA shall have the discretion to remove you as a collaborator without
liability to you whatsoever. IMDA is not obliged to provide any reasons for any rejection of your
application to be a collaborator. The Collaborator Terms and Conditions are found{" "}
-
+ {/*
here
-
+ */}
.
diff --git a/src/components/UI/RegistryCard/RegistryCard.test.tsx b/src/components/UI/RegistryCard/RegistryCard.test.tsx
index d20c6a8c5..46c184311 100644
--- a/src/components/UI/RegistryCard/RegistryCard.test.tsx
+++ b/src/components/UI/RegistryCard/RegistryCard.test.tsx
@@ -5,7 +5,7 @@ import { RegistryCard } from "./RegistryCard";
describe("registryCard", () => {
it("should render with first contact info as main institute + number of contact infos correctly", () => {
const logoSrc = "/static/images/GOVTECH_logo.png";
- const name = "Government Technology Agency of Singapore (GovTech)";
+ const name = "ROPSTEN: OpenCerts";
const contact = [
{
id: "govtech-registry",
@@ -49,7 +49,7 @@ describe("registryCard", () => {
it("should render search results correctly", () => {
const logoSrc = "/static/images/GOVTECH_logo.png";
- const name = "Government Technology Agency of Singapore (GovTech)";
+ const name = "ROPSTEN: OpenCerts";
const contact = [
{
id: "govtech-registry",
diff --git a/src/components/tests/dns-registry-verified.spec.js b/src/components/tests/dns-registry-verified.spec.js
index 7479648cc..100cac9c3 100644
--- a/src/components/tests/dns-registry-verified.spec.js
+++ b/src/components/tests/dns-registry-verified.spec.js
@@ -14,7 +14,7 @@ const StatusButton = Selector("#certificate-status");
test("Sample document is rendered correctly when dns and registry is verified", async (t) => {
await t.setFilesToUpload("input[type=file]", [Document]);
- await validateTextContent(t, StatusButton, ["SEPOLIA: GOVERNMENT TECHNOLOGY AGENCY OF SINGAPORE (GOVTECH)"]);
+ await validateTextContent(t, StatusButton, ["SEPOLIA: OPENCERTS"]);
await t.switchToIframe(IframeBlock);
diff --git a/src/components/tests/download-certificate.spec.js b/src/components/tests/download-certificate.spec.js
index 61b842429..b06e1181d 100644
--- a/src/components/tests/download-certificate.spec.js
+++ b/src/components/tests/download-certificate.spec.js
@@ -72,10 +72,7 @@ test("Sample document with special characters is downloaded correctly", async (t
await enableDownloadForHeadlessChrome(t);
await t.setFilesToUpload("input[type=file]", [Document2]);
- await validateTextContent(t, StatusButton, [
- "DEMO-OPENCERTS.OPENATTESTATION.COM",
- "SEPOLIA: GOVERNMENT TECHNOLOGY AGENCY OF SINGAPORE (GOVTECH)",
- ]);
+ await validateTextContent(t, StatusButton, ["DEMO-OPENCERTS.OPENATTESTATION.COM", "SEPOLIA: OPENCERTS"]);
// Simulate an OpenCert file download
const fileName = await DownloadLink.getAttribute("download");
diff --git a/src/components/tests/load-action-encrypted-certificate.spec.js b/src/components/tests/load-action-encrypted-certificate.spec.js
index 63198fbde..0040de6d7 100644
--- a/src/components/tests/load-action-encrypted-certificate.spec.js
+++ b/src/components/tests/load-action-encrypted-certificate.spec.js
@@ -28,7 +28,7 @@ test("Load OA v2.0 document from action should work when action is valid (key fr
await t.navigateTo(
`http://localhost:3000/?q=${encodeURI(JSON.stringify(action))}#${encodeURI(JSON.stringify(anchor))}`
);
- await validateTextContent(t, StatusButton, ["SEPOLIA: GOVERNMENT TECHNOLOGY AGENCY OF SINGAPORE (GOVTECH)"]);
+ await validateTextContent(t, StatusButton, ["SEPOLIA: OPENCERTS"]);
await t.switchToIframe(IframeBlock);
@@ -79,7 +79,7 @@ test("Load document from action should work when action is valid (key from query
};
await t.navigateTo(`http://localhost:3000/?q=${encodeURI(JSON.stringify(action))}`);
- await validateTextContent(t, StatusButton, ["SEPOLIA: GOVERNMENT TECHNOLOGY AGENCY OF SINGAPORE (GOVTECH)"]);
+ await validateTextContent(t, StatusButton, ["SEPOLIA: OPENCERTS"]);
await t.switchToIframe(IframeBlock);
diff --git a/src/components/tests/load-action-plain-certificate.spec.js b/src/components/tests/load-action-plain-certificate.spec.js
index a5699bc39..6fbd848a2 100644
--- a/src/components/tests/load-action-plain-certificate.spec.js
+++ b/src/components/tests/load-action-plain-certificate.spec.js
@@ -22,7 +22,7 @@ test("Load document from action should work when url is valid (OA v2.0)", async
};
await t.navigateTo(`http://localhost:3000/?q=${encodeURI(JSON.stringify(action))}`);
- await validateTextContent(t, StatusButton, ["SEPOLIA: GOVERNMENT TECHNOLOGY AGENCY OF SINGAPORE (GOVTECH)"]);
+ await validateTextContent(t, StatusButton, ["SEPOLIA: OPENCERTS"]);
await t.switchToIframe(IframeBlock);
diff --git a/src/components/tests/multi-dns-verified-certificate-store.spec.js b/src/components/tests/multi-dns-verified-certificate-store.spec.js
index 82da34e37..3bf2dc6fd 100644
--- a/src/components/tests/multi-dns-verified-certificate-store.spec.js
+++ b/src/components/tests/multi-dns-verified-certificate-store.spec.js
@@ -15,7 +15,7 @@ const StatusButton = Selector("#certificate-status");
test("Sample document is rendered correctly when multiple dns is verified", async (t) => {
await t.setFilesToUpload("input[type=file]", [Document]);
- await validateTextContent(t, StatusButton, ["SEPOLIA: GOVERNMENT TECHNOLOGY AGENCY OF SINGAPORE (GOVTECH)"]);
+ await validateTextContent(t, StatusButton, ["SEPOLIA: OPENCERTS"]);
await t.switchToIframe(IframeBlock);
diff --git a/src/components/tests/multi-dns-verified.spec.js b/src/components/tests/multi-dns-verified.spec.js
index 132cbda42..92cdf9d30 100644
--- a/src/components/tests/multi-dns-verified.spec.js
+++ b/src/components/tests/multi-dns-verified.spec.js
@@ -14,7 +14,7 @@ const StatusButton = Selector("#certificate-status");
test("Sample document is rendered correctly when multiple dns is verified", async (t) => {
await t.setFilesToUpload("input[type=file]", [Document]);
- await validateTextContent(t, StatusButton, ["SEPOLIA: GOVERNMENT TECHNOLOGY AGENCY OF SINGAPORE (GOVTECH)"]);
+ await validateTextContent(t, StatusButton, ["SEPOLIA: OPENCERTS"]);
await t.switchToIframe(IframeBlock);
diff --git a/src/components/tests/multi-registry-verified.spec.js b/src/components/tests/multi-registry-verified.spec.js
index 678babb2f..9a6c8991b 100644
--- a/src/components/tests/multi-registry-verified.spec.js
+++ b/src/components/tests/multi-registry-verified.spec.js
@@ -12,5 +12,5 @@ const StatusButton = Selector("#certificate-status");
test("Sample document is rendered correctly when multiple registry is verified", async (t) => {
await t.setFilesToUpload("input[type=file]", [Document]);
- await validateTextContent(t, StatusButton, ["SEPOLIA: GOVERNMENT TECHNOLOGY AGENCY OF SINGAPORE (GOVTECH)"]);
+ await validateTextContent(t, StatusButton, ["SEPOLIA: OPENCERTS"]);
});
diff --git a/src/components/tests/obfuscated-document-verified.spec.js b/src/components/tests/obfuscated-document-verified.spec.js
index 5e44c4b50..e05c04b55 100644
--- a/src/components/tests/obfuscated-document-verified.spec.js
+++ b/src/components/tests/obfuscated-document-verified.spec.js
@@ -15,7 +15,7 @@ const ObfuscationNote = Selector("#obfuscation-note");
test("Sample document is rendered correctly when single registry is verified", async (t) => {
await t.setFilesToUpload("input[type=file]", [Document]);
- await validateTextContent(t, StatusButton, ["SEPOLIA: GOVERNMENT TECHNOLOGY AGENCY OF SINGAPORE (GOVTECH)"]);
+ await validateTextContent(t, StatusButton, ["SEPOLIA: OPENCERTS"]);
await validateTextContent(t, ObfuscationNote, [
"The owner of this certificate have chosen not to share certain information in the certificate with you. Please note that this does not affect the authenticity of the certificate.",
diff --git a/src/components/tests/registry-verified.spec.js b/src/components/tests/registry-verified.spec.js
index eff6f94af..595d5aea5 100644
--- a/src/components/tests/registry-verified.spec.js
+++ b/src/components/tests/registry-verified.spec.js
@@ -16,7 +16,7 @@ const SampleTemplate = Selector("#rendered-certificate");
test("Sample document is rendered correctly when single registry is verified", async (t) => {
await t.setFilesToUpload("input[type=file]", [Document]);
- await validateTextContent(t, StatusButton, ["SEPOLIA: GOVERNMENT TECHNOLOGY AGENCY OF SINGAPORE (GOVTECH)"]);
+ await validateTextContent(t, StatusButton, ["SEPOLIA: OPENCERTS"]);
await t.switchToIframe(IframeBlock);
diff --git a/src/components/tests/utils.js b/src/components/tests/utils.js
index b06adc2eb..de946fe24 100644
--- a/src/components/tests/utils.js
+++ b/src/components/tests/utils.js
@@ -1,4 +1,4 @@
-export const validateTextContent = async (t, component, texts) => {
- await t.expect(component.exists).ok();
- await Promise.all(texts.map(async (text) => await t.expect(component.textContent).contains(text)));
+export const validateTextContent = async (t, component, texts, timeout = 30000) => {
+ await t.expect(component.exists).ok({ timeout });
+ await Promise.all(texts.map(async (text) => await t.expect(component.textContent).contains(text, { timeout })));
};
diff --git a/src/components/tests/verified-unverified-issuer.spec.js b/src/components/tests/verified-unverified-issuer.spec.js
index 54a84cab2..1e67c913e 100644
--- a/src/components/tests/verified-unverified-issuer.spec.js
+++ b/src/components/tests/verified-unverified-issuer.spec.js
@@ -16,7 +16,7 @@ const StatusButton = Selector("#certificate-status");
test("Sample doc is rendered correctly when any one of dns or registry is verified and doc store mismatch in domain", async (t) => {
await t.setFilesToUpload("input[type=file]", [Document]);
- await validateTextContent(t, StatusButton, ["SEPOLIA: GOVERNMENT TECHNOLOGY AGENCY OF SINGAPORE (GOVTECH)"]);
+ await validateTextContent(t, StatusButton, ["SEPOLIA: OPENCERTS"]);
await t.switchToIframe(IframeBlock);
diff --git a/src/config/index.ts b/src/config/index.ts
index 34019a302..88e7487d0 100644
--- a/src/config/index.ts
+++ b/src/config/index.ts
@@ -7,7 +7,7 @@ const { publicRuntimeConfig = {} } = getConfig();
export const URL = "https://opencerts.io";
const API_MAIN_URL = "https://api.opencerts.io";
-const API_DEV_URL = "https://dev-api.opencerts.io";
+const API_DEV_URL = "https://api.dev.opencerts.io";
export const IS_MAINNET = publicRuntimeConfig.network === "mainnet";
export const SUPPORTED_NETWORK = IS_MAINNET ? ["homestead", "matic"] : ["sepolia", "amoy"];
diff --git a/src/constants/PartnerLogo.json b/src/constants/PartnerLogo.json
index 5ab25a6fe..4723c777e 100644
--- a/src/constants/PartnerLogo.json
+++ b/src/constants/PartnerLogo.json
@@ -117,12 +117,5 @@
"value": "/static/images/SSG_logo.png",
"link": "https://www.ssg-wsg.gov.sg/",
"portrait": false
- },
- {
- "key": "govtech",
- "name": "Government Technology Agency",
- "value": "/static/images/GOVTECH_logo.png",
- "link": "https://www.tech.gov.sg/",
- "portrait": false
}
]
diff --git a/src/integration/v4/fixtures/v4_batched.json b/src/integration/v4/fixtures/v4_batched.json
index 67f810a07..775913d97 100644
--- a/src/integration/v4/fixtures/v4_batched.json
+++ b/src/integration/v4/fixtures/v4_batched.json
@@ -4,10 +4,7 @@
"https://schemata.openattestation.com/com/openattestation/4.0/context.json"
],
"name": "Govtech Demo Certificate V4",
- "type": [
- "VerifiableCredential",
- "OpenAttestationCredential"
- ],
+ "type": ["VerifiableCredential", "OpenAttestationCredential"],
"issuer": {
"id": "did:ethr:0x1245e5B64D785b25057f7438F715f4aA5D965733",
"type": "OpenAttestationIssuer",
@@ -95,9 +92,7 @@
"type": "OpenAttestationMerkleProofSignature2018",
"proofPurpose": "assertionMethod",
"targetHash": "ce5c0b5987149aeb338737427953068d0f71444d1341dfe84666394ad434ae55",
- "proofs": [
- "2123a14c20bc670692f0927d86f1e37ddd4e9b7f39cd1b29e1837517e6be0473"
- ],
+ "proofs": ["2123a14c20bc670692f0927d86f1e37ddd4e9b7f39cd1b29e1837517e6be0473"],
"merkleRoot": "3b36492f4b5cda0b42fd756456a087888998a3e02387d94b60f65660787b22fa",
"salts": "W3sidmFsdWUiOiJkYmM3ZTUxNjgxZTE1MzVlNmE1Y2Y1YzBkZTQ2OTZhM2ExZWU1NDRhNTUzNWRhOWRmNGUwYjUxM2I4OTZmNjUwIiwicGF0aCI6IkBjb250ZXh0WzBdIn0seyJ2YWx1ZSI6IjYwZjlkOGFmMjk0OWY4ZTFiOGIxMjBjMjQwZWViZWNjMWM0MTc4OTM0NTdiNzNiMDg4YmM1MDAyYWU1MTE5YjgiLCJwYXRoIjoiQGNvbnRleHRbMV0ifSx7InZhbHVlIjoiNmYxZWJlNTk0NzEwYzY3Nzk5NTQ3YTNhZTkyNTcyZmY0YjU1MThiOTFjMWUxMWU1YzgxNDMzZDNkYjZjYzE5MiIsInBhdGgiOiJuYW1lIn0seyJ2YWx1ZSI6ImE4OTU3NGMzODE4OWZmNWQ5Y2Q1MzYwYmFjYjg1MGZlMmY2NDMxY2Q1N2JmN2JmNjdkNDMwMTYwM2NkNzY5MGYiLCJwYXRoIjoidHlwZVswXSJ9LHsidmFsdWUiOiI1MzA1ZmRkNGVlMmExYzM2ZGM1NTI3NzRiMGUxNDc5OGY3YjNlNWY4NmY5YTlkZTFmMTJhOTJlMjg5ZTAyMzc1IiwicGF0aCI6InR5cGVbMV0ifSx7InZhbHVlIjoiNjM2Nzc4MWQwNjhhNmIzYTRkMGM1NDQ2ZThlMTgxYzY0N2NmNWYzNmQxNjRiNjEzZjZmZDVlNTY1ZTIyMTY1ZCIsInBhdGgiOiJpc3N1ZXIuaWQifSx7InZhbHVlIjoiNzk1ZTllNjJhYjMxMmNmNDMyY2E3YzJmNWI5NTI3YjNjMTNmYWU1YmM5ODRjOTU4YzkyY2MxMWQ3ZTk3M2ZkYSIsInBhdGgiOiJpc3N1ZXIudHlwZSJ9LHsidmFsdWUiOiJjNDFkN2JhNjI4NDgyNmVhYjYyNzgzYWRmOWU3ZTk4MjczNTJkODVlZGI4MDU0MTk2YjEwNjc3ZDdlNmEwM2RkIiwicGF0aCI6Imlzc3Vlci5uYW1lIn0seyJ2YWx1ZSI6IjI1MDViZDRhZjhhOTUzZmIwOGU2MDhmODdlNmQ5NzA0NjEzNTIyNDk1Y2QwNWYyMzQ4NjI1NTk4YTRkNzkyNWQiLCJwYXRoIjoiaXNzdWVyLmlkZW50aXR5UHJvb2YuaWRlbnRpdHlQcm9vZlR5cGUifSx7InZhbHVlIjoiMjkyZWIxNWFmODdmYWY2OGVkNjQxNGMzYmMxYjIxZWQ1ZTJmYWMyMDExZTFjMjA4NTEyODBiNGM2OGE0ZmQ3NSIsInBhdGgiOiJpc3N1ZXIuaWRlbnRpdHlQcm9vZi5pZGVudGlmaWVyIn0seyJ2YWx1ZSI6ImI3YzY1ZTU0ODI2MDhiYWYxOTU3NmRhNGY5Y2RkZjAyZmZjYmZhZGI3YzQyYTZjYmQyMzlkOTVmMWY4YjZlYjAiLCJwYXRoIjoidmFsaWRGcm9tIn0seyJ2YWx1ZSI6IjgzY2Y5YzE4ZGFhYTcxYjQwMmQyOGI3MjUyNTlmODU4NTRiMzlkZGUwMjVjZTc1YzE0ZmE4NGIxNDM3NGRjZWQiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuaWQifSx7InZhbHVlIjoiNjAwM2Y0YTgwOTJiNDBhNGM5ODcxNzkyNzExOTI2OWVhYjE0M2Q5ODMxMTkyZjA5YjVlZTZiMTEwOWRmMmM5OCIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5yZWNpcGllbnQubmFtZSJ9LHsidmFsdWUiOiJjZWMwZDAwN2NmNTE1Mjg2MWRjOWVkZTg3M2VhYmNjMDFhNTE3ZjQyZjY2N2ZhNTNiN2U2Y2IyMjhlY2JlNDRlIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LnJlY2lwaWVudC5ucmljIn0seyJ2YWx1ZSI6ImE2YTYwZDU1MWJhNWU0NzYxZDI4ZDQwNDE3NTA4OTNhMGVlMGE0YmE4ZGUxMjllOTMwYjAxNzU4ZDIxN2Y5YWUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QucmVjaXBpZW50LmNvdXJzZSJ9LHsidmFsdWUiOiIwMGUxM2Y1OTM1YTg5ZTdkZDM5NjVmMTllMGM3Y2U2ZTljMjBkZmRiMWIyN2IyYmQ2ZDFmZDFjZmU5MjgxMzZjIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0Lmlzc3VlZE9uIn0seyJ2YWx1ZSI6IjFiZGU1MzYxNjI5YmM5NThlM2FiMDBlMDYzYmU3OGQ4ZGNjODI5YWRmN2FjYTdlZmQ4Y2IxNDhiOTYwODA0ZTUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuYWRtaXNzaW9uRGF0ZSJ9LHsidmFsdWUiOiI1MGY2YTc5NTA3ZjY5NDJkMzZmNzI0Yzg2OTNjYzI4ZDhmNjQ5ZmNlZGM4NWEyNzJjMTRhZDY1YjBmYWVkODZmIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmdyYWR1YXRpb25EYXRlIn0seyJ2YWx1ZSI6IjI0YTk2MGY2OGViZGQxYmQzMDgwMjZhNzAzNjRkNWE4ODQyOWE0ODRlYjEzYjRiOGZiMDUwN2E3OTVkNGUxZTAiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFswXS5uYW1lIn0seyJ2YWx1ZSI6Ijk1ZTk1N2Q3M2Y4MTQ4YTA4OGY3NzM2NWUzZGNmZDcyY2YwMGFjZWQwNmMxODQzMDRiMTMxMDVmYmZhMzk1YzUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFswXS5ncmFkZSJ9LHsidmFsdWUiOiI2NjUxMGQ1Njg5MDJiZjM1ZmY5ODNiMDIyZTE0YWY4YTQ1MmNjY2ZhZDc1Yjc2ZDIxNDE0YWZjNThkZmUyMDQwIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LnRyYW5zY3JpcHRbMF0uY291cnNlQ3JlZGl0In0seyJ2YWx1ZSI6IjU0OTcxYTBjMjQ0MGIxODliMDRiYWZmMzZkZTVlNTQwOTgwYjA3OWVjMmFkMjExOTZkYjNiOGY3M2FjZTRhMWYiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFswXS5jb3Vyc2VDb2RlIn0seyJ2YWx1ZSI6IjUxYjJmZTY5YzA4MTViMmQzOWY1ODllNDQxZTMyZmViMTgyNTk5ZGQ3MDI4ZTg1NjE1NGFkOGJmOWQ3OWJjZWYiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFswXS5leGFtaW5hdGlvbkRhdGUifSx7InZhbHVlIjoiMzczN2QwNzA3NDNiNGZhZmMwODkzNjBjNDc3OTI0YWNmNzJjZTg5ODk4Y2E5NTZmNTQ5OTQ3MWZkMDRjMWY4NCIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzBdLnNlbWVzdGVyIn0seyJ2YWx1ZSI6ImI5YTU1NTRjYzZjOGQ0MzgzNjIyM2ZlYjg5OWUxODk4MGRkYTQwMzFhZjFjZDQyZGEzZjFjNmE1ZjkwNjg2ZmIiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFsxXS5uYW1lIn0seyJ2YWx1ZSI6IjhmNjFiNWFlNDYzNGY5YzRhNTBjZDcwY2NkNTk5YTc0MDM2ZDUzNGYwZGU5NTgzMjJmNjE5ZThhZGNhMWNjMzEiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFsxXS5ncmFkZSJ9LHsidmFsdWUiOiI0YTdiOTdhOWI5MmNiZTBiYzYxNTJjODU2MDdjZDA4MDk1ODc3NzM0ZmY4Y2RhMDY2ZWY3YzgwOGE5OTZiYWIzIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LnRyYW5zY3JpcHRbMV0uY291cnNlQ3JlZGl0In0seyJ2YWx1ZSI6IjU0YzhhMGY4NDg0MmZjMGU2MWVmMjNkMTRlZWE5ODU3NjEzMmE2Mzg2N2M1ODNhNjE2MjAwOGM4ZjBjODEwYmMiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFsxXS5jb3Vyc2VDb2RlIn0seyJ2YWx1ZSI6ImJjODQ4MmY5ZTgyZjcyZTI5MzRmYzEyNWM3ODNiYTY5YTkyNjFiMDFiNDEzNGMwNjU5MTRjMDdlMzZjMjYwYTEiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFsxXS5leGFtaW5hdGlvbkRhdGUifSx7InZhbHVlIjoiYWM5NjUzOGUxNDdhNmRkMzliMzIwMDBkMjUzNjc2YWE0NWExNjBlNGFlMjVlNmNjMTFjNTdkNjBmZDU5N2Q5ZiIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzFdLnNlbWVzdGVyIn0seyJ2YWx1ZSI6ImQ2OGFkY2MxYjMzODRkMTA3YmQ0YjQ3MzE2MmNiZjI4NjgzYmYwM2VlM2RmNWE3NTQwMjAzZWYzN2E0MWI3ZTYiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFsyXS5uYW1lIn0seyJ2YWx1ZSI6IjRhZTViMTU5NTc1NmFmMGJjOWY4MDUzYjFjNGMyZmU1MDcxYjI1MjNlMmU1MzE3MTM5MzU4M2I5YjljN2NlYzAiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFsyXS5ncmFkZSJ9LHsidmFsdWUiOiI0ZTJmMTZiMDA4M2IwNzY1YTAzZDg4MTU4N2U3YjZiMDI4MjUwYjVhMTk0M2RmMGMyODY1YmM0ZWQ0N2I1OGQzIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LnRyYW5zY3JpcHRbMl0uY291cnNlQ3JlZGl0In0seyJ2YWx1ZSI6ImIzZmYyMzkxYjUyNzkyMjZiMTI5Mzc2ZDg4OWNjN2JjOTM4NWZlZTUwMDgyZGY0YTNlMzUyZmFkOTQwNzI1OTIiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFsyXS5jb3Vyc2VDb2RlIn0seyJ2YWx1ZSI6IjlhOGNlYTNmZGY5NjIzOGMzZGU2OGQ4NGZkMWEwNTk4ZDk0NmI0MGE1YzhiYjc1YTY1ZDZhMDFlYjdkYzdiZjciLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFsyXS5leGFtaW5hdGlvbkRhdGUifSx7InZhbHVlIjoiMDgwMjUxNDE0NDQwZjMzNjk3OGI4NDQ5YWEwNGQ0NWM2ODNhYjAyOWYwOWE0MGUzMzVmYjA0MWQ4NmIwNDcwMyIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzJdLnNlbWVzdGVyIn0seyJ2YWx1ZSI6IjgwNWNkMjgzNjZiYzhhYzE0MGMyZTQzOWEwODgxZmZkYTkxZTVkYTFhMDAyODBmOWM5NTFmMTNlZWQwMzUwZWEiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFszXS5uYW1lIn0seyJ2YWx1ZSI6Ijk2N2YyODk4ODA1ZjA5ZTI4NjJjYTY4NTk0ZTBlMzA5N2UzOGQ4MGI3YWZiMWIxZmEyZmNmOTMwMTVmY2YzYTkiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFszXS5ncmFkZSJ9LHsidmFsdWUiOiIyYTNkNjlmOWExNWU1MGQ5N2NiMjRiMmEyZGNmNGJjOGRjM2E0YzdmZGE3MzQ5YTFiYjZlYjM0Mzg0ZmNjOWEzIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LnRyYW5zY3JpcHRbM10uY291cnNlQ3JlZGl0In0seyJ2YWx1ZSI6IjlmZWUxYjI0OWZkZjNkNWI3OTVkMGVhOTlmMzNjYjhiMDlhMjA2YTAxMTNlZjNjY2NlY2Q0MmJjZDdkZjI4ZTYiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFszXS5jb3Vyc2VDb2RlIn0seyJ2YWx1ZSI6IjYzZmQ4NmE0ODhjNWQ2ZGI4NzJjOGExN2Q5ODUzZTUyYWMyYzRhMzMxNWM5NWQ0MWZlYTIzYWM2NzA1MDhlMWQiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFszXS5leGFtaW5hdGlvbkRhdGUifSx7InZhbHVlIjoiOWYxNTA3Mzc1NWE0ODM3MDM5YTU5YTk1N2ViNDk3MDliMzc5MjM0MDFjM2Y0YTM3MGFlYWI1Y2QyNjFiNWE5YyIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzNdLnNlbWVzdGVyIn0seyJ2YWx1ZSI6ImE4MTkxYjI5MjdiZjlhMmU2MGUwZjljMDljODJlOWU4M2Y0NGY5MzIwY2FlNGE2MDgwYWM1NTI1YThhNzdmZjQiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFs0XS5uYW1lIn0seyJ2YWx1ZSI6ImFmMGU3NWNhYzZlNTJhYzdjNTljNWRmOTRmMGFhMDUwMDEyMGI2Mzg3Njk4MGQ1NWFiOGNmZjQ5OWNkYmIyNjUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFs0XS5ncmFkZSJ9LHsidmFsdWUiOiIwYzI0ZmE4NWE5NzFkMmMxYjg5MWQ2Njg1ZTZmYmJjZmFhOTBiN2JkNDk2MDczNGUwNmE3OWFkNDVkZTM1MWI5IiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LnRyYW5zY3JpcHRbNF0uY291cnNlQ3JlZGl0In0seyJ2YWx1ZSI6IjZjOTQ3ZTQ5ZDE2NGIyYjc5OThmMzUyNWM1ZTU2NDQ2MThkMTU4NzZmNmFiYjk4NDQ2ZGU1ZWJhNTE2NzljZjUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFs0XS5jb3Vyc2VDb2RlIn0seyJ2YWx1ZSI6ImI2ZWEzNWUyYWUxMTE3ZWU0MDdmOTIxOTk0NWM4N2EwOWVkYzQzYmQwOTZmNmM1YWQ1Y2VmYTQ4NDdjZmE2NGUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFs0XS5leGFtaW5hdGlvbkRhdGUifSx7InZhbHVlIjoiYjRmZjkwNGFjOGZmYzljOTJjNzFkMzRmNzAxMzdhMDAzNTc2NzE4NWM4MmVjNTIyMDliZTlhMWIxZmJlYWIyNyIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzRdLnNlbWVzdGVyIn0seyJ2YWx1ZSI6IjgwNzMyNWQwNTRiYjE4NzhlMGYxMGYyMThmOGMxM2M0MTg3YjZlNDdiMDNmODgxNjkzZTQwYTQyMjQwNzg1MDAiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuYWRkaXRpb25hbERhdGEubWVyaXQifSx7InZhbHVlIjoiYzE5NGEyYTFjYzQxMjZlNjM0OWM3ZDZkYzYwNDUzMjllYzc0ZThhZWZhZjA2MjE2NGE4ZmUxYjU5MmM0ZGI0YyIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5hZGRpdGlvbmFsRGF0YS5zdHVkZW50SWQifSx7InZhbHVlIjoiMWYyMzY0MDE5ODY3M2JmNjRlYzFmYTY2N2NiNWZkNDAzMDYzMmExMmU1ZGIxMmVkZThhNjBmYjNiNGYzMDFiYSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5hZGRpdGlvbmFsRGF0YS50cmFuc2NyaXB0SWQifSx7InZhbHVlIjoiNzA3NDI2NGUwMzAzY2U1MjEwM2NjZDQzZTQ3ZjliZmIwODQ4MDE2YjUwYWQ1ODExZThjYjA2NjAxMjM0NDE5OCIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5hZGRpdGlvbmFsRGF0YS5jZXJ0U2lnbmF0b3JpZXNbMF0uc2lnbmF0dXJlIn0seyJ2YWx1ZSI6IjJmZTQ4Nzg1NDk0MzVhMjU5ODZjNjY1MDNjNWZhMjE4OTA4MTJjN2U5ZmVlMmIyZWM5MjRiMWM4ODlhMzBiNTkiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuYWRkaXRpb25hbERhdGEuY2VydFNpZ25hdG9yaWVzWzBdLm5hbWUifSx7InZhbHVlIjoiZjE1ZjA2Y2JmZWFmMjlkMmUzYzUxNjM4MGJhNjNjNjVhY2MyOGYwY2M1MzM4MDVhODRiMTJiMTA2OTJjN2E4YyIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5hZGRpdGlvbmFsRGF0YS5jZXJ0U2lnbmF0b3JpZXNbMF0ucG9zaXRpb24ifSx7InZhbHVlIjoiZjMzYzlhMjNmMzExY2QxMThhNDg0Mzk5YmY5YWE1NDMwMDJiYTg2ZjUzODhlOTM4MjBhMDRjYjdkZmEzYTliZiIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5hZGRpdGlvbmFsRGF0YS5jZXJ0U2lnbmF0b3JpZXNbMF0ub3JnYW5pc2F0aW9uIn0seyJ2YWx1ZSI6IjBkMTYwMTU1NDIwNWY5NTIyZmM4NmM1YWRlNTEyM2FmMDVhODFmZGE0ZDQ2YTAwOWI0NTJlZGE1Zjg3ZTY1ZGMiLCJwYXRoIjoicmVuZGVyTWV0aG9kWzBdLmlkIn0seyJ2YWx1ZSI6IjA4NmM2OTk2MzM2YTAxMzYwMjM5ZmZmYWM1NDRlOGQzMzYzODc4OTM0Nzk0ZjY0NmY3NmY3MzE1NjQ3YWIzMzIiLCJwYXRoIjoicmVuZGVyTWV0aG9kWzBdLnR5cGUifSx7InZhbHVlIjoiMGMwMDE3NzcwZjQ1YzlhM2U2ZDZkNmMyZjJhNzFmZGMzMzNiZTk2YWJlZTY0ZTM0MDFmMTkxNzk3OTFjN2U0ZCIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0udGVtcGxhdGVOYW1lIn1d",
"privacy": {
@@ -106,4 +101,4 @@
"key": "did:ethr:0x1245e5B64D785b25057f7438F715f4aA5D965733#controller",
"signature": "0x3c508a61e8cf9c7de6bc8a4b452c7303a8994cbb095fd0fd77568f521d0081ad13a0b047f84b3fafae6b0f0aee87327778d7aff2800cf3d346c110e53e65c2711b"
}
-}
\ No newline at end of file
+}
diff --git a/src/integration/v4/fixtures/v4_data_obfuscated.json b/src/integration/v4/fixtures/v4_data_obfuscated.json
index 3265cb38b..2a91356cb 100644
--- a/src/integration/v4/fixtures/v4_data_obfuscated.json
+++ b/src/integration/v4/fixtures/v4_data_obfuscated.json
@@ -4,10 +4,7 @@
"https://schemata.openattestation.com/com/openattestation/4.0/context.json"
],
"name": "Govtech Demo Certificate V4",
- "type": [
- "VerifiableCredential",
- "OpenAttestationCredential"
- ],
+ "type": ["VerifiableCredential", "OpenAttestationCredential"],
"issuer": {
"id": "did:ethr:0x1245e5B64D785b25057f7438F715f4aA5D965733",
"type": "OpenAttestationIssuer",
@@ -85,9 +82,7 @@
"type": "OpenAttestationMerkleProofSignature2018",
"proofPurpose": "assertionMethod",
"targetHash": "ce5c0b5987149aeb338737427953068d0f71444d1341dfe84666394ad434ae55",
- "proofs": [
- "2123a14c20bc670692f0927d86f1e37ddd4e9b7f39cd1b29e1837517e6be0473"
- ],
+ "proofs": ["2123a14c20bc670692f0927d86f1e37ddd4e9b7f39cd1b29e1837517e6be0473"],
"merkleRoot": "3b36492f4b5cda0b42fd756456a087888998a3e02387d94b60f65660787b22fa",
"salts": "W3sidmFsdWUiOiJkYmM3ZTUxNjgxZTE1MzVlNmE1Y2Y1YzBkZTQ2OTZhM2ExZWU1NDRhNTUzNWRhOWRmNGUwYjUxM2I4OTZmNjUwIiwicGF0aCI6IkBjb250ZXh0WzBdIn0seyJ2YWx1ZSI6IjYwZjlkOGFmMjk0OWY4ZTFiOGIxMjBjMjQwZWViZWNjMWM0MTc4OTM0NTdiNzNiMDg4YmM1MDAyYWU1MTE5YjgiLCJwYXRoIjoiQGNvbnRleHRbMV0ifSx7InZhbHVlIjoiNmYxZWJlNTk0NzEwYzY3Nzk5NTQ3YTNhZTkyNTcyZmY0YjU1MThiOTFjMWUxMWU1YzgxNDMzZDNkYjZjYzE5MiIsInBhdGgiOiJuYW1lIn0seyJ2YWx1ZSI6ImE4OTU3NGMzODE4OWZmNWQ5Y2Q1MzYwYmFjYjg1MGZlMmY2NDMxY2Q1N2JmN2JmNjdkNDMwMTYwM2NkNzY5MGYiLCJwYXRoIjoidHlwZVswXSJ9LHsidmFsdWUiOiI1MzA1ZmRkNGVlMmExYzM2ZGM1NTI3NzRiMGUxNDc5OGY3YjNlNWY4NmY5YTlkZTFmMTJhOTJlMjg5ZTAyMzc1IiwicGF0aCI6InR5cGVbMV0ifSx7InZhbHVlIjoiNjM2Nzc4MWQwNjhhNmIzYTRkMGM1NDQ2ZThlMTgxYzY0N2NmNWYzNmQxNjRiNjEzZjZmZDVlNTY1ZTIyMTY1ZCIsInBhdGgiOiJpc3N1ZXIuaWQifSx7InZhbHVlIjoiNzk1ZTllNjJhYjMxMmNmNDMyY2E3YzJmNWI5NTI3YjNjMTNmYWU1YmM5ODRjOTU4YzkyY2MxMWQ3ZTk3M2ZkYSIsInBhdGgiOiJpc3N1ZXIudHlwZSJ9LHsidmFsdWUiOiJjNDFkN2JhNjI4NDgyNmVhYjYyNzgzYWRmOWU3ZTk4MjczNTJkODVlZGI4MDU0MTk2YjEwNjc3ZDdlNmEwM2RkIiwicGF0aCI6Imlzc3Vlci5uYW1lIn0seyJ2YWx1ZSI6IjI1MDViZDRhZjhhOTUzZmIwOGU2MDhmODdlNmQ5NzA0NjEzNTIyNDk1Y2QwNWYyMzQ4NjI1NTk4YTRkNzkyNWQiLCJwYXRoIjoiaXNzdWVyLmlkZW50aXR5UHJvb2YuaWRlbnRpdHlQcm9vZlR5cGUifSx7InZhbHVlIjoiMjkyZWIxNWFmODdmYWY2OGVkNjQxNGMzYmMxYjIxZWQ1ZTJmYWMyMDExZTFjMjA4NTEyODBiNGM2OGE0ZmQ3NSIsInBhdGgiOiJpc3N1ZXIuaWRlbnRpdHlQcm9vZi5pZGVudGlmaWVyIn0seyJ2YWx1ZSI6ImI3YzY1ZTU0ODI2MDhiYWYxOTU3NmRhNGY5Y2RkZjAyZmZjYmZhZGI3YzQyYTZjYmQyMzlkOTVmMWY4YjZlYjAiLCJwYXRoIjoidmFsaWRGcm9tIn0seyJ2YWx1ZSI6IjgzY2Y5YzE4ZGFhYTcxYjQwMmQyOGI3MjUyNTlmODU4NTRiMzlkZGUwMjVjZTc1YzE0ZmE4NGIxNDM3NGRjZWQiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuaWQifSx7InZhbHVlIjoiNjAwM2Y0YTgwOTJiNDBhNGM5ODcxNzkyNzExOTI2OWVhYjE0M2Q5ODMxMTkyZjA5YjVlZTZiMTEwOWRmMmM5OCIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5yZWNpcGllbnQubmFtZSJ9LHsidmFsdWUiOiJjZWMwZDAwN2NmNTE1Mjg2MWRjOWVkZTg3M2VhYmNjMDFhNTE3ZjQyZjY2N2ZhNTNiN2U2Y2IyMjhlY2JlNDRlIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LnJlY2lwaWVudC5ucmljIn0seyJ2YWx1ZSI6ImE2YTYwZDU1MWJhNWU0NzYxZDI4ZDQwNDE3NTA4OTNhMGVlMGE0YmE4ZGUxMjllOTMwYjAxNzU4ZDIxN2Y5YWUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QucmVjaXBpZW50LmNvdXJzZSJ9LHsidmFsdWUiOiIwMGUxM2Y1OTM1YTg5ZTdkZDM5NjVmMTllMGM3Y2U2ZTljMjBkZmRiMWIyN2IyYmQ2ZDFmZDFjZmU5MjgxMzZjIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0Lmlzc3VlZE9uIn0seyJ2YWx1ZSI6IjFiZGU1MzYxNjI5YmM5NThlM2FiMDBlMDYzYmU3OGQ4ZGNjODI5YWRmN2FjYTdlZmQ4Y2IxNDhiOTYwODA0ZTUiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QuYWRtaXNzaW9uRGF0ZSJ9LHsidmFsdWUiOiI1MGY2YTc5NTA3ZjY5NDJkMzZmNzI0Yzg2OTNjYzI4ZDhmNjQ5ZmNlZGM4NWEyNzJjMTRhZDY1YjBmYWVkODZmIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmdyYWR1YXRpb25EYXRlIn0seyJ2YWx1ZSI6IjI0YTk2MGY2OGViZGQxYmQzMDgwMjZhNzAzNjRkNWE4ODQyOWE0ODRlYjEzYjRiOGZiMDUwN2E3OTVkNGUxZTAiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFswXS5uYW1lIn0seyJ2YWx1ZSI6IjU0OTcxYTBjMjQ0MGIxODliMDRiYWZmMzZkZTVlNTQwOTgwYjA3OWVjMmFkMjExOTZkYjNiOGY3M2FjZTRhMWYiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFswXS5jb3Vyc2VDb2RlIn0seyJ2YWx1ZSI6IjUxYjJmZTY5YzA4MTViMmQzOWY1ODllNDQxZTMyZmViMTgyNTk5ZGQ3MDI4ZTg1NjE1NGFkOGJmOWQ3OWJjZWYiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFswXS5leGFtaW5hdGlvbkRhdGUifSx7InZhbHVlIjoiYjlhNTU1NGNjNmM4ZDQzODM2MjIzZmViODk5ZTE4OTgwZGRhNDAzMWFmMWNkNDJkYTNmMWM2YTVmOTA2ODZmYiIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzFdLm5hbWUifSx7InZhbHVlIjoiOGY2MWI1YWU0NjM0ZjljNGE1MGNkNzBjY2Q1OTlhNzQwMzZkNTM0ZjBkZTk1ODMyMmY2MTllOGFkY2ExY2MzMSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzFdLmdyYWRlIn0seyJ2YWx1ZSI6IjRhN2I5N2E5YjkyY2JlMGJjNjE1MmM4NTYwN2NkMDgwOTU4Nzc3MzRmZjhjZGEwNjZlZjdjODA4YTk5NmJhYjMiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFsxXS5jb3Vyc2VDcmVkaXQifSx7InZhbHVlIjoiNTRjOGEwZjg0ODQyZmMwZTYxZWYyM2QxNGVlYTk4NTc2MTMyYTYzODY3YzU4M2E2MTYyMDA4YzhmMGM4MTBiYyIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzFdLmNvdXJzZUNvZGUifSx7InZhbHVlIjoiYmM4NDgyZjllODJmNzJlMjkzNGZjMTI1Yzc4M2JhNjlhOTI2MWIwMWI0MTM0YzA2NTkxNGMwN2UzNmMyNjBhMSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzFdLmV4YW1pbmF0aW9uRGF0ZSJ9LHsidmFsdWUiOiJhYzk2NTM4ZTE0N2E2ZGQzOWIzMjAwMGQyNTM2NzZhYTQ1YTE2MGU0YWUyNWU2Y2MxMWM1N2Q2MGZkNTk3ZDlmIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LnRyYW5zY3JpcHRbMV0uc2VtZXN0ZXIifSx7InZhbHVlIjoiZDY4YWRjYzFiMzM4NGQxMDdiZDRiNDczMTYyY2JmMjg2ODNiZjAzZWUzZGY1YTc1NDAyMDNlZjM3YTQxYjdlNiIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzJdLm5hbWUifSx7InZhbHVlIjoiNGFlNWIxNTk1NzU2YWYwYmM5ZjgwNTNiMWM0YzJmZTUwNzFiMjUyM2UyZTUzMTcxMzkzNTgzYjliOWM3Y2VjMCIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzJdLmdyYWRlIn0seyJ2YWx1ZSI6IjRlMmYxNmIwMDgzYjA3NjVhMDNkODgxNTg3ZTdiNmIwMjgyNTBiNWExOTQzZGYwYzI4NjViYzRlZDQ3YjU4ZDMiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFsyXS5jb3Vyc2VDcmVkaXQifSx7InZhbHVlIjoiYjNmZjIzOTFiNTI3OTIyNmIxMjkzNzZkODg5Y2M3YmM5Mzg1ZmVlNTAwODJkZjRhM2UzNTJmYWQ5NDA3MjU5MiIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzJdLmNvdXJzZUNvZGUifSx7InZhbHVlIjoiOWE4Y2VhM2ZkZjk2MjM4YzNkZTY4ZDg0ZmQxYTA1OThkOTQ2YjQwYTVjOGJiNzVhNjVkNmEwMWViN2RjN2JmNyIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzJdLmV4YW1pbmF0aW9uRGF0ZSJ9LHsidmFsdWUiOiIwODAyNTE0MTQ0NDBmMzM2OTc4Yjg0NDlhYTA0ZDQ1YzY4M2FiMDI5ZjA5YTQwZTMzNWZiMDQxZDg2YjA0NzAzIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LnRyYW5zY3JpcHRbMl0uc2VtZXN0ZXIifSx7InZhbHVlIjoiODA1Y2QyODM2NmJjOGFjMTQwYzJlNDM5YTA4ODFmZmRhOTFlNWRhMWEwMDI4MGY5Yzk1MWYxM2VlZDAzNTBlYSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzNdLm5hbWUifSx7InZhbHVlIjoiOTY3ZjI4OTg4MDVmMDllMjg2MmNhNjg1OTRlMGUzMDk3ZTM4ZDgwYjdhZmIxYjFmYTJmY2Y5MzAxNWZjZjNhOSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzNdLmdyYWRlIn0seyJ2YWx1ZSI6IjJhM2Q2OWY5YTE1ZTUwZDk3Y2IyNGIyYTJkY2Y0YmM4ZGMzYTRjN2ZkYTczNDlhMWJiNmViMzQzODRmY2M5YTMiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFszXS5jb3Vyc2VDcmVkaXQifSx7InZhbHVlIjoiOWZlZTFiMjQ5ZmRmM2Q1Yjc5NWQwZWE5OWYzM2NiOGIwOWEyMDZhMDExM2VmM2NjY2VjZDQyYmNkN2RmMjhlNiIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzNdLmNvdXJzZUNvZGUifSx7InZhbHVlIjoiNjNmZDg2YTQ4OGM1ZDZkYjg3MmM4YTE3ZDk4NTNlNTJhYzJjNGEzMzE1Yzk1ZDQxZmVhMjNhYzY3MDUwOGUxZCIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzNdLmV4YW1pbmF0aW9uRGF0ZSJ9LHsidmFsdWUiOiI5ZjE1MDczNzU1YTQ4MzcwMzlhNTlhOTU3ZWI0OTcwOWIzNzkyMzQwMWMzZjRhMzcwYWVhYjVjZDI2MWI1YTljIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LnRyYW5zY3JpcHRbM10uc2VtZXN0ZXIifSx7InZhbHVlIjoiYTgxOTFiMjkyN2JmOWEyZTYwZTBmOWMwOWM4MmU5ZTgzZjQ0ZjkzMjBjYWU0YTYwODBhYzU1MjVhOGE3N2ZmNCIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzRdLm5hbWUifSx7InZhbHVlIjoiYWYwZTc1Y2FjNmU1MmFjN2M1OWM1ZGY5NGYwYWEwNTAwMTIwYjYzODc2OTgwZDU1YWI4Y2ZmNDk5Y2RiYjI2NSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzRdLmdyYWRlIn0seyJ2YWx1ZSI6IjBjMjRmYTg1YTk3MWQyYzFiODkxZDY2ODVlNmZiYmNmYWE5MGI3YmQ0OTYwNzM0ZTA2YTc5YWQ0NWRlMzUxYjkiLCJwYXRoIjoiY3JlZGVudGlhbFN1YmplY3QudHJhbnNjcmlwdFs0XS5jb3Vyc2VDcmVkaXQifSx7InZhbHVlIjoiNmM5NDdlNDlkMTY0YjJiNzk5OGYzNTI1YzVlNTY0NDYxOGQxNTg3NmY2YWJiOTg0NDZkZTVlYmE1MTY3OWNmNSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzRdLmNvdXJzZUNvZGUifSx7InZhbHVlIjoiYjZlYTM1ZTJhZTExMTdlZTQwN2Y5MjE5OTQ1Yzg3YTA5ZWRjNDNiZDA5NmY2YzVhZDVjZWZhNDg0N2NmYTY0ZSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC50cmFuc2NyaXB0WzRdLmV4YW1pbmF0aW9uRGF0ZSJ9LHsidmFsdWUiOiJiNGZmOTA0YWM4ZmZjOWM5MmM3MWQzNGY3MDEzN2EwMDM1NzY3MTg1YzgyZWM1MjIwOWJlOWExYjFmYmVhYjI3IiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LnRyYW5zY3JpcHRbNF0uc2VtZXN0ZXIifSx7InZhbHVlIjoiODA3MzI1ZDA1NGJiMTg3OGUwZjEwZjIxOGY4YzEzYzQxODdiNmU0N2IwM2Y4ODE2OTNlNDBhNDIyNDA3ODUwMCIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5hZGRpdGlvbmFsRGF0YS5tZXJpdCJ9LHsidmFsdWUiOiJjMTk0YTJhMWNjNDEyNmU2MzQ5YzdkNmRjNjA0NTMyOWVjNzRlOGFlZmFmMDYyMTY0YThmZTFiNTkyYzRkYjRjIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmFkZGl0aW9uYWxEYXRhLnN0dWRlbnRJZCJ9LHsidmFsdWUiOiIxZjIzNjQwMTk4NjczYmY2NGVjMWZhNjY3Y2I1ZmQ0MDMwNjMyYTEyZTVkYjEyZWRlOGE2MGZiM2I0ZjMwMWJhIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmFkZGl0aW9uYWxEYXRhLnRyYW5zY3JpcHRJZCJ9LHsidmFsdWUiOiI3MDc0MjY0ZTAzMDNjZTUyMTAzY2NkNDNlNDdmOWJmYjA4NDgwMTZiNTBhZDU4MTFlOGNiMDY2MDEyMzQ0MTk4IiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmFkZGl0aW9uYWxEYXRhLmNlcnRTaWduYXRvcmllc1swXS5zaWduYXR1cmUifSx7InZhbHVlIjoiMmZlNDg3ODU0OTQzNWEyNTk4NmM2NjUwM2M1ZmEyMTg5MDgxMmM3ZTlmZWUyYjJlYzkyNGIxYzg4OWEzMGI1OSIsInBhdGgiOiJjcmVkZW50aWFsU3ViamVjdC5hZGRpdGlvbmFsRGF0YS5jZXJ0U2lnbmF0b3JpZXNbMF0ubmFtZSJ9LHsidmFsdWUiOiJmMTVmMDZjYmZlYWYyOWQyZTNjNTE2MzgwYmE2M2M2NWFjYzI4ZjBjYzUzMzgwNWE4NGIxMmIxMDY5MmM3YThjIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmFkZGl0aW9uYWxEYXRhLmNlcnRTaWduYXRvcmllc1swXS5wb3NpdGlvbiJ9LHsidmFsdWUiOiJmMzNjOWEyM2YzMTFjZDExOGE0ODQzOTliZjlhYTU0MzAwMmJhODZmNTM4OGU5MzgyMGEwNGNiN2RmYTNhOWJmIiwicGF0aCI6ImNyZWRlbnRpYWxTdWJqZWN0LmFkZGl0aW9uYWxEYXRhLmNlcnRTaWduYXRvcmllc1swXS5vcmdhbmlzYXRpb24ifSx7InZhbHVlIjoiMGQxNjAxNTU0MjA1Zjk1MjJmYzg2YzVhZGU1MTIzYWYwNWE4MWZkYTRkNDZhMDA5YjQ1MmVkYTVmODdlNjVkYyIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0uaWQifSx7InZhbHVlIjoiMDg2YzY5OTYzMzZhMDEzNjAyMzlmZmZhYzU0NGU4ZDMzNjM4Nzg5MzQ3OTRmNjQ2Zjc2ZjczMTU2NDdhYjMzMiIsInBhdGgiOiJyZW5kZXJNZXRob2RbMF0udHlwZSJ9LHsidmFsdWUiOiIwYzAwMTc3NzBmNDVjOWEzZTZkNmQ2YzJmMmE3MWZkYzMzM2JlOTZhYmVlNjRlMzQwMWYxOTE3OTc5MWM3ZTRkIiwicGF0aCI6InJlbmRlck1ldGhvZFswXS50ZW1wbGF0ZU5hbWUifV0=",
"privacy": {
@@ -107,4 +102,4 @@
"templateName": "GOVTECH_DEMO"
}
]
-}
\ No newline at end of file
+}
diff --git a/src/integration/v4/fixtures/v4_embedded_renderer.json b/src/integration/v4/fixtures/v4_embedded_renderer.json
index ff4130cc8..36b1e2aa7 100644
--- a/src/integration/v4/fixtures/v4_embedded_renderer.json
+++ b/src/integration/v4/fixtures/v4_embedded_renderer.json
@@ -4,10 +4,7 @@
"https://schemata.openattestation.com/com/openattestation/4.0/context.json"
],
"name": "Govtech Demo Certificate V4",
- "type": [
- "VerifiableCredential",
- "OpenAttestationCredential"
- ],
+ "type": ["VerifiableCredential", "OpenAttestationCredential"],
"issuer": {
"id": "did:ethr:0x1245e5b64d785b25057f7438f715f4aa5d965733",
"type": "OpenAttestationIssuer",
@@ -104,4 +101,4 @@
"key": "did:ethr:0x1245e5B64D785b25057f7438F715f4aA5D965733#controller",
"signature": "0x67ec2a705fd64de2331e898fdf65f5c73c62febdd8b535d7728d938339be541c5b824c57dff3c3dbf32370cc3208e9ff669fafd0b6f51bf6a18059667fed52a61c"
}
-}
\ No newline at end of file
+}
diff --git a/src/integration/v4/fixtures/v4_svg.json b/src/integration/v4/fixtures/v4_svg.json
index 7695760a9..b26ac5517 100644
--- a/src/integration/v4/fixtures/v4_svg.json
+++ b/src/integration/v4/fixtures/v4_svg.json
@@ -4,10 +4,7 @@
"https://schemata.openattestation.com/com/openattestation/4.0/context.json"
],
"name": "Govtech Demo Certificate V4",
- "type": [
- "VerifiableCredential",
- "OpenAttestationCredential"
- ],
+ "type": ["VerifiableCredential", "OpenAttestationCredential"],
"issuer": {
"id": "did:ethr:0x1245e5b64d785b25057f7438f715f4aa5d965733",
"type": "OpenAttestationIssuer",
@@ -55,4 +52,4 @@
"key": "did:ethr:0x1245e5B64D785b25057f7438F715f4aA5D965733#controller",
"signature": "0x1ac6468d2fe04a3a600af888a218b1c355bbd417f336fea9123260106f6ad33f7831d6c41cf4a9ffb967d86e04fa0bf8274340ddeda6213e656c7628c68bf9bc1c"
}
-}
\ No newline at end of file
+}
diff --git a/src/sagas/certificate.ts b/src/sagas/certificate.ts
index 2a8de9fae..691366e22 100644
--- a/src/sagas/certificate.ts
+++ b/src/sagas/certificate.ts
@@ -95,6 +95,8 @@ const getUrls = (options: {
return [
{ url: `https://polygon-amoy.infura.io/v3/${process.env.INFURA_API_KEY}` },
{ url: `https://polygon-amoy.g.alchemy.com/v2/${process.env.ALCHEMY_API_KEY}` },
+ { url: `https://rpc-amoy.polygon.technology/` },
+ { url: `https://polygon-amoy-bor-rpc.publicnode.com/` },
];
default:
console.error(`Unrecognised network: ${network}`);
diff --git a/src/sagas/sagatests/integration-server-error.spec.js b/src/sagas/sagatests/integration-server-error.spec.js
index 2670c876b..c05a4f85e 100644
--- a/src/sagas/sagatests/integration-server-error.spec.js
+++ b/src/sagas/sagatests/integration-server-error.spec.js
@@ -41,7 +41,7 @@ test.requestHooks(badGatewayMockInfuraOnly)(
async (t) => {
await t.setFilesToUpload("input[type=file]", [Certificate2]);
- await validateTextContent(t, StatusButton, ["SEPOLIA: GOVERNMENT TECHNOLOGY AGENCY OF SINGAPORE (GOVTECH)"]);
+ await validateTextContent(t, StatusButton, ["SEPOLIA: OPENCERTS"]);
await t.switchToIframe(IframeBlock);