{"_id":"@creit.tech/sorobandomains-sdk","_rev":"6-ffc0d4abbfbed3adccc0682667bb85f0","name":"@creit.tech/sorobandomains-sdk","dist-tags":{"latest":"0.1.6"},"versions":{"0.1.0":{"name":"@creit.tech/sorobandomains-sdk","version":"0.1.0","keywords":[],"author":{"url":"https://creit.tech","name":"Creit Technologies LLP"},"license":"MIT","_id":"@creit.tech/sorobandomains-sdk@0.1.0","maintainers":[{"name":"earrietadev","email":"info@earrieta.dev"}],"homepage":"https://github.com/Creit-Tech/sorobandomains-sdk-js#readme","bugs":{"url":"https://github.com/Creit-Tech/sorobandomains-sdk-js/issues"},"dist":{"shasum":"621c06b5e97630c35da8e5e56b95a3b2e04cd8fd","tarball":"https://registry.npmjs.org/@creit.tech/sorobandomains-sdk/-/sorobandomains-sdk-0.1.0.tgz","fileCount":15,"integrity":"sha512-oWNOoQYlnoTTlMJei9oab0sdm0ZngFE79H31IjdxGbURNUEcupOBjnZQ2pLw6wEXEwCLL5W5NKTHTkStutmdmg==","signatures":[{"sig":"MEUCIC0gdS0v92OMO+HbBbzbKkPtSovMjGtUyGnsPi4XeGZWAiEAtt+zBg03yisJcrtalONO2BscqCBLGAWN608p9kHcskc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":20199},"main":"build/index","type":"commonjs","engines":{"node":">=16"},"gitHead":"ce556df2d5c06a190b6c277335744f5e4105c47d","scripts":{"test":"pnpm exec jest","build":"pnpm exec rimraf ./build && pnpm exec tsc"},"typings":"build/index.d.ts","_npmUser":{"name":"earrietadev","email":"info@earrieta.dev"},"repository":{"url":"git+https://github.com/Creit-Tech/sorobandomains-sdk-js.git","type":"git"},"_npmVersion":"10.2.4","description":"An SDK to easily fetch domains from the sorobandomains.org protocol","directories":{},"_nodeVersion":"20.11.0","dependencies":{"buffer":"^6.0.3","js-sha3":"^0.9.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.0","rimraf":"^5.0.5","ts-jest":"^29.1.2","ts-node":"^10.9.2","prettier":"^3.2.5","typescript":"^5.3.3","@types/jest":"^29.5.12","eslint-plugin-jest":"^27.9.0","@stellar/stellar-sdk":"^11.2.2","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.1.3","@typescript-eslint/parser":"^7.1.0","@typescript-eslint/eslint-plugin":"^7.1.0"},"_npmOperationalInternal":{"tmp":"tmp/sorobandomains-sdk_0.1.0_1709418563982_0.657889507001665","host":"s3://npm-registry-packages"}},"0.1.1":{"name":"@creit.tech/sorobandomains-sdk","version":"0.1.1","keywords":[],"author":{"url":"https://creit.tech","name":"Creit Technologies LLP"},"license":"MIT","_id":"@creit.tech/sorobandomains-sdk@0.1.1","maintainers":[{"name":"earrietadev","email":"info@earrieta.dev"}],"homepage":"https://github.com/Creit-Tech/sorobandomains-sdk-js#readme","bugs":{"url":"https://github.com/Creit-Tech/sorobandomains-sdk-js/issues"},"dist":{"shasum":"f1c837221944172a418ca2616ee72648cf42d708","tarball":"https://registry.npmjs.org/@creit.tech/sorobandomains-sdk/-/sorobandomains-sdk-0.1.1.tgz","fileCount":15,"integrity":"sha512-PDV758gxlAtwSRKGpsDEe7ckptdwBG9EiQ0PJzIdZkURZ+A4CiD2BmdQTYX1u5MzH5kbeat26raG39xwLSDaSA==","signatures":[{"sig":"MEUCIQCMSKPfJnMFdQCAlS/4qqvETBIsI1nofvS8CbH/BApLTQIgIjbtAxuI1h+Qjv9Ew5OlLpD+Y7KSrbuBwZyYH6/zz9E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":20199},"main":"build/index","type":"commonjs","engines":{"node":">=16"},"gitHead":"ce556df2d5c06a190b6c277335744f5e4105c47d","scripts":{"test":"pnpm exec jest","build":"pnpm exec rimraf ./build && pnpm exec tsc"},"typings":"build/index.d.ts","_npmUser":{"name":"earrietadev","email":"info@earrieta.dev"},"repository":{"url":"git+https://github.com/Creit-Tech/sorobandomains-sdk-js.git","type":"git"},"_npmVersion":"10.2.4","description":"An SDK to easily fetch domains from the sorobandomains.org protocol","directories":{},"_nodeVersion":"20.11.0","dependencies":{"buffer":"^6.0.3","js-sha3":"^0.9.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.0","rimraf":"^5.0.5","ts-jest":"^29.1.2","ts-node":"^10.9.2","prettier":"^3.2.5","typescript":"^5.3.3","@types/jest":"^29.5.12","eslint-plugin-jest":"^27.9.0","@stellar/stellar-sdk":"^11.2.2","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.1.3","@typescript-eslint/parser":"^7.1.0","@typescript-eslint/eslint-plugin":"^7.1.0"},"_npmOperationalInternal":{"tmp":"tmp/sorobandomains-sdk_0.1.1_1709418668665_0.9631372306717971","host":"s3://npm-registry-packages"}},"0.1.2":{"name":"@creit.tech/sorobandomains-sdk","version":"0.1.2","keywords":[],"author":{"url":"https://creit.tech","name":"Creit Technologies LLP"},"license":"MIT","_id":"@creit.tech/sorobandomains-sdk@0.1.2","maintainers":[{"name":"earrietadev","email":"info@earrieta.dev"}],"homepage":"https://github.com/Creit-Tech/sorobandomains-sdk-js#readme","bugs":{"url":"https://github.com/Creit-Tech/sorobandomains-sdk-js/issues"},"dist":{"shasum":"646b8781c2aae660546807b7565072ab6ea4c7f8","tarball":"https://registry.npmjs.org/@creit.tech/sorobandomains-sdk/-/sorobandomains-sdk-0.1.2.tgz","fileCount":15,"integrity":"sha512-bUSCyXzN2fzx14ShqQwdMwtR784M0NBADPLohGsnO5TphAuIOg7cxEObSFFBmo4sPUuoJYFloK9CYIf/ZXkCHQ==","signatures":[{"sig":"MEUCIQDpLQxap/DrBFLhX6dt98gatKdrfisRzH7RiVS3wHeL3QIgODOWtsBUgAyVW699OPU1k0cMa+100ualueRoZ2sYjHM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":29296},"main":"build/index","type":"module","engines":{"node":">=16"},"gitHead":"94824124823e3200d9db0aea23ce49daa0e08325","scripts":{"test":"pnpm exec jest","build":"pnpm exec rimraf ./build && pnpm exec tsc"},"typings":"build/index.d.ts","_npmUser":{"name":"earrietadev","email":"info@earrieta.dev"},"repository":{"url":"git+https://github.com/Creit-Tech/sorobandomains-sdk-js.git","type":"git"},"_npmVersion":"10.2.4","description":"An SDK to easily fetch domains from the sorobandomains.org protocol","directories":{},"_nodeVersion":"20.11.0","dependencies":{"buffer":"^6.0.3","js-sha3":"^0.9.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.0","rimraf":"^5.0.5","ts-jest":"^29.1.2","ts-node":"^10.9.2","prettier":"^3.2.5","typescript":"^5.3.3","@types/jest":"^29.5.12","eslint-plugin-jest":"^27.9.0","@stellar/stellar-sdk":"^11.2.2","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.1.3","@typescript-eslint/parser":"^7.1.0","@typescript-eslint/eslint-plugin":"^7.1.0"},"_npmOperationalInternal":{"tmp":"tmp/sorobandomains-sdk_0.1.2_1711481034108_0.9818303247328057","host":"s3://npm-registry-packages"}},"0.1.3":{"name":"@creit.tech/sorobandomains-sdk","version":"0.1.3","keywords":[],"author":{"url":"https://creit.tech","name":"Creit Technologies LLP"},"license":"MIT","_id":"@creit.tech/sorobandomains-sdk@0.1.3","maintainers":[{"name":"earrietadev","email":"info@earrieta.dev"}],"homepage":"https://github.com/Creit-Tech/sorobandomains-sdk-js#readme","bugs":{"url":"https://github.com/Creit-Tech/sorobandomains-sdk-js/issues"},"dist":{"shasum":"35a635323066f25ae6b865c8bb66bb1045b58fe0","tarball":"https://registry.npmjs.org/@creit.tech/sorobandomains-sdk/-/sorobandomains-sdk-0.1.3.tgz","fileCount":15,"integrity":"sha512-uMHjp8EUIsE6t5+BWnGCW/X8h2r3W7u0fPe7QLW4Pa3KLU4IKMphqv9ptvBuolZwpq8xVRppiNWCYojTN0Y0KA==","signatures":[{"sig":"MEUCIEalSqjsc96zjak9i6lu69g/Ksy+r7GlXQo+OL+KPHqOAiEAlfG5rx7I+fx1JaSP2asBHW+9gL409BzDPDUBzeIkbfY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22294},"main":"build/index","type":"module","engines":{"node":">=16"},"gitHead":"b149990c4fbd709d712d99e3cd3b67d55b9f0237","scripts":{"test":"pnpm exec jest","build":"pnpm exec rimraf ./build && pnpm exec tsc"},"typings":"build/index.d.ts","_npmUser":{"name":"earrietadev","email":"info@earrieta.dev"},"repository":{"url":"git+https://github.com/Creit-Tech/sorobandomains-sdk-js.git","type":"git"},"_npmVersion":"10.2.4","description":"An SDK to easily fetch domains from the sorobandomains.org protocol","directories":{},"_nodeVersion":"20.11.0","dependencies":{"buffer":"^6.0.3","js-sha3":"^0.9.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.0","rimraf":"^5.0.5","ts-jest":"^29.1.2","ts-node":"^10.9.2","prettier":"^3.2.5","typescript":"^5.3.3","@types/jest":"^29.5.12","eslint-plugin-jest":"^27.9.0","@stellar/stellar-sdk":"^12.3.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.1.3","@typescript-eslint/parser":"^7.1.0","@typescript-eslint/eslint-plugin":"^7.1.0"},"_npmOperationalInternal":{"tmp":"tmp/sorobandomains-sdk_0.1.3_1729819498493_0.5871730306271343","host":"s3://npm-registry-packages"}},"0.1.4":{"name":"@creit.tech/sorobandomains-sdk","version":"0.1.4","keywords":[],"author":{"url":"https://creit.tech","name":"Creit Technologies LLP"},"license":"MIT","_id":"@creit.tech/sorobandomains-sdk@0.1.4","maintainers":[{"name":"earrietadev","email":"info@earrieta.dev"}],"homepage":"https://github.com/Creit-Tech/sorobandomains-sdk-js#readme","bugs":{"url":"https://github.com/Creit-Tech/sorobandomains-sdk-js/issues"},"dist":{"shasum":"f08fb09896cc9f419cb683a7f016a45dc060af05","tarball":"https://registry.npmjs.org/@creit.tech/sorobandomains-sdk/-/sorobandomains-sdk-0.1.4.tgz","fileCount":16,"integrity":"sha512-NpuVPOUIrb4GpG3DJuHQJHWUjEvPixO+AMWEQTB4uUMNCfyogwbsORx4h90LS39yAIxeAEbtW4nwOV/8scUTEQ==","signatures":[{"sig":"MEQCIGf7ZTq7cZE/rFcn2vHMYdLQatERJzQ+P4lReIEoBS5fAiAXxXyJqIJQl/6naurAmllE5ttLiPuAMS9IEeZRYvYfCw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":30162},"main":"build/index","type":"module","engines":{"node":">=16"},"gitHead":"94acd9503c82f454f1e79f8bc63b303c1a2b0822","scripts":{"test":"pnpm exec jest","build":"pnpm exec rimraf ./build && pnpm exec tsc"},"typings":"build/index.d.ts","_npmUser":{"name":"earrietadev","email":"info@earrieta.dev"},"repository":{"url":"git+https://github.com/Creit-Tech/sorobandomains-sdk-js.git","type":"git"},"_npmVersion":"10.2.4","description":"An SDK to easily fetch domains from the sorobandomains.org protocol","directories":{},"_nodeVersion":"20.11.0","dependencies":{"buffer":"^6.0.3","js-sha3":"^0.9.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.0","rimraf":"^5.0.5","ts-jest":"^29.1.2","ts-node":"^10.9.2","prettier":"^3.2.5","typescript":"^5.3.3","@types/jest":"^29.5.12","eslint-plugin-jest":"^27.9.0","@stellar/stellar-sdk":"^12.3.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.1.3","@typescript-eslint/parser":"^7.1.0","@typescript-eslint/eslint-plugin":"^7.1.0"},"_npmOperationalInternal":{"tmp":"tmp/sorobandomains-sdk_0.1.4_1730915639498_0.5017857982067058","host":"s3://npm-registry-packages"}},"0.1.5":{"name":"@creit.tech/sorobandomains-sdk","version":"0.1.5","keywords":[],"author":{"url":"https://creit.tech","name":"Creit Technologies LLP"},"license":"MIT","_id":"@creit.tech/sorobandomains-sdk@0.1.5","maintainers":[{"name":"earrietadev","email":"info@earrieta.dev"}],"homepage":"https://github.com/Creit-Tech/sorobandomains-sdk-js#readme","bugs":{"url":"https://github.com/Creit-Tech/sorobandomains-sdk-js/issues"},"dist":{"shasum":"c6f0858dd4865b179271c6b812014543faa8e7bf","tarball":"https://registry.npmjs.org/@creit.tech/sorobandomains-sdk/-/sorobandomains-sdk-0.1.5.tgz","fileCount":16,"integrity":"sha512-Z4xtIWY74/q6fVG2bWjd7xHTE8ys4/1XEx9pkl84JBdJzj3IysMyv1xpOGBMqDvnj0b9MKVLes+fAH8u4Qii1A==","signatures":[{"sig":"MEYCIQDJ+lf0B5GwxQusmTyrErKf2QTiEAzFJ2nUtGvLFGPLWAIhAM08LzWoGEyvAexciAmIyuGJbvvU+sIkOKLQIsMODMja","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":30410},"main":"build/index","type":"module","engines":{"node":">=16"},"gitHead":"cbe955fb89c99e60b164ac77cf6d106222ec6829","scripts":{"test":"pnpm exec jest","build":"pnpm exec rimraf ./build && pnpm exec tsc"},"typings":"build/index.d.ts","_npmUser":{"name":"earrietadev","email":"info@earrieta.dev"},"repository":{"url":"git+https://github.com/Creit-Tech/sorobandomains-sdk-js.git","type":"git"},"_npmVersion":"10.2.4","description":"An SDK to easily fetch domains from the sorobandomains.org protocol","directories":{},"_nodeVersion":"20.11.0","dependencies":{"buffer":"^6.0.3","js-sha3":"^0.9.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","eslint":"^8.57.0","rimraf":"^5.0.5","ts-jest":"^29.1.2","ts-node":"^10.9.2","prettier":"^3.2.5","typescript":"^5.3.3","@types/jest":"^29.5.12","eslint-plugin-jest":"^27.9.0","@stellar/stellar-sdk":"^13.1.0","eslint-config-prettier":"^9.1.0","eslint-plugin-prettier":"^5.1.3","@typescript-eslint/parser":"^7.1.0","@typescript-eslint/eslint-plugin":"^7.1.0"},"_npmOperationalInternal":{"tmp":"tmp/sorobandomains-sdk_0.1.5_1737038165512_0.37120751232472515","host":"s3://npm-registry-packages-npm-production"}},"0.1.6":{"name":"@creit.tech/sorobandomains-sdk","version":"0.1.6","description":"An SDK to easily fetch domains from the sorobandomains.org protocol","license":"MIT","author":{"name":"Creit Technologies LLP","url":"https://creit.tech"},"main":"build/index","typings":"build/index.d.ts","type":"module","repository":{"type":"git","url":"git+https://github.com/Creit-Tech/sorobandomains-sdk-js.git"},"scripts":{"build":"pnpm exec rimraf ./build && pnpm exec tsc","test":"pnpm exec jest"},"engines":{"node":">=16"},"keywords":[],"dependencies":{"buffer":"^6.0.3","js-sha3":"^0.9.3"},"devDependencies":{"@stellar/stellar-sdk":"^13.1.0","@types/jest":"^29.5.12","@typescript-eslint/eslint-plugin":"^7.1.0","@typescript-eslint/parser":"^7.1.0","eslint":"^8.57.0","eslint-config-prettier":"^9.1.0","eslint-plugin-jest":"^27.9.0","eslint-plugin-prettier":"^5.1.3","jest":"^29.7.0","prettier":"^3.2.5","rimraf":"^5.0.5","ts-jest":"^29.1.2","ts-node":"^10.9.2","typescript":"^5.3.3"},"_id":"@creit.tech/sorobandomains-sdk@0.1.6","gitHead":"529320d5b1a761b327fec3e0aa58b008bd740f83","bugs":{"url":"https://github.com/Creit-Tech/sorobandomains-sdk-js/issues"},"homepage":"https://github.com/Creit-Tech/sorobandomains-sdk-js#readme","_nodeVersion":"20.11.0","_npmVersion":"10.2.4","dist":{"integrity":"sha512-9dXTSefevgDq7TT3/SROK9DGsdaIEcVy0JIIDzgQXSv8frmFlxRtEpkI2rtdLskmcTbelhaDgb7Ga77UrHvVVw==","shasum":"e96eafdb5600c6029fca4140e234679bd7368430","tarball":"https://registry.npmjs.org/@creit.tech/sorobandomains-sdk/-/sorobandomains-sdk-0.1.6.tgz","fileCount":16,"unpackedSize":30361,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG9op7X0L0l4obUau/g/l3otiHkz2x5cHnNpdREdWsEyAiEAyK5QVrBF8t93bCTFH92x1ymEZsiLW/SEDsaY8ulNo10="}]},"_npmUser":{"name":"earrietadev","email":"info@earrieta.dev"},"directories":{},"maintainers":[{"name":"earrietadev","email":"info@earrieta.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sorobandomains-sdk_0.1.6_1737041408836_0.9041109504138911"},"_hasShrinkwrap":false}},"time":{"created":"2024-03-02T22:29:23.896Z","modified":"2025-01-16T15:30:09.255Z","0.1.0":"2024-03-02T22:29:24.177Z","0.1.1":"2024-03-02T22:31:08.867Z","0.1.2":"2024-03-26T19:23:54.250Z","0.1.3":"2024-10-25T01:24:58.740Z","0.1.4":"2024-11-06T17:53:59.681Z","0.1.5":"2025-01-16T14:36:05.666Z","0.1.6":"2025-01-16T15:30:09.062Z"},"bugs":{"url":"https://github.com/Creit-Tech/sorobandomains-sdk-js/issues"},"author":{"name":"Creit Technologies LLP","url":"https://creit.tech"},"license":"MIT","homepage":"https://github.com/Creit-Tech/sorobandomains-sdk-js#readme","keywords":[],"repository":{"type":"git","url":"git+https://github.com/Creit-Tech/sorobandomains-sdk-js.git"},"description":"An SDK to easily fetch domains from the sorobandomains.org protocol","maintainers":[{"name":"earrietadev","email":"info@earrieta.dev"}],"readme":"An SDK to search registered domains in the Registry Smart Contract from the [SorobanDomains](https://sorobandomains.org) protocol\n\n## Installation\n\n```shell\nnpm i @creit.tech/sorobandomains-sdk\n```\n\n## The SorobanDomainsSDK class\n\nThe first step will be creating a new instance from the main class.\n\n```typescript\nimport * as SDK from '@stellar/stellar-sdk';\nimport config from './myconfigfile.ts';\n\nconst sdk: SorobanDomainsSDK = new SorobanDomainsSDK({\n  stellarSDK: SDK,\n  rpc: new SDK.rpc.Server(config.RPC_URL),\n  network: config.NETWORK,\n  vaultsContractId: config.VAULTS_CONTRACT_ID,\n  valuesDatabaseContractId: config.VALUES_DATABASE_CONTRACT_ID,\n  reverseRegistrarContractId: config.REVERSE_REGISTRAR_CONTRACT_ID,\n  defaultFee: config.DEFAULT_FEE,\n  defaultTimeout: config.DEFAULT_TIMEOUT,\n  simulationAccount: config.SIMULATION_ACCOUNT,\n});\n```\n\n> If you want to know what each value represents, check the `SorobanDomainsSDKParams` interface in the `./src/types.ts` file.\n\n## Fetch a registered domain\n\n```typescript\nimport { Record } from '@creit.tech/sorobandomains-sdk';\n\nconst domainRecord: Record = await sdk.searchDomain({ domain: 'jhon' });\nconst subDomainRecord: Record = await sdk.searchDomain({ domain: 'jhon', subDomain: 'payments' });\n```\n\nWhen searching for a domain, you can receive two types of errors: an expected error by the SDK or a simulation error.\nCurrently, there is only one expected error by the SDK: `Domain404Error`.\n\nIf you need to catch this type of error you can do this:\n\n```typescript\nimport { Domain404Error } from '@creit.tech/sorobandomains-sdk';\n\ntry {\n  const domainRecord: Record = await sdk.searchDomain({ domain: 'nonexistingrecord' });\n} catch (e) {\n  if (e.name === Domain404Error.name) {\n    // ... Do something here\n  } else {\n    // ... Do this instead\n  }\n}\n```\n\n> Note: In the example we check by the name and not if is an instance of the class because depending on your environment that validation method could fail.\n\n## Fetch the reverse domain of an address\n\nBefore fetching the reverse domain of an address, you need to set `reverseRegistrarContractId` in the `SorobanDomainsSDK` constructor.\n\n```typescript\nimport { ReverseDomain404Error } from '@creit.tech/sorobandomains-sdk';\n\nconst address = 'GAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWHF';\n\ntry {\n  const domain: string = await sdk.getReverseDomain(address);\n} catch (e) {\n  if (e.name === ReverseDomain404Error.name) {\n    // ... Do something here\n  } else {\n    // ... Do this instead\n  }\n}\n```\n\n## License\n\n![](https://img.shields.io/badge/License-MIT-lightgrey)\n\nLicensed under the MIT License, Copyright © 2024-present Creit Technologies LLP.\n\nCheckout the `LICENSE.md` file for more details.\n","readmeFilename":"README.md"}