[Error Code: 1101] cadence runtime error Execution failed: error: cannot deploy invalid contract --> 08ca0b277fa38cdf2e7369a17d685f08bde48027773ac6c2ee1fca2679b9cb55:4:3 | 4 | signer.contracts.add(name: name, code: code.decodeHex() ) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: [Error Code: 1054] location (./OracleInterface.cdc) is not a valid location: expecting an AddressLocation, but other location types are passed --> ./OracleInterface.cdc error: [Error Code: 1054] location (./OracleConfig.cdc) is not a valid location: expecting an AddressLocation, but other location types are passed --> ./OracleConfig.cdc error: cannot find type in this scope: `OracleInterface` --> 07e2f8fc48632ece.PriceOracle:31:26 | 31 | pub contract PriceOracle: OracleInterface { | ^^^^^^^^^^^^^^^ not found in this scope error: cannot find type in this scope: `OracleInterface` --> 07e2f8fc48632ece.PriceOracle:98:30 | 98 | pub resource PriceFeeder: OracleInterface.PriceFeederPublic { | ^^^^^^^^^^^^^^^ not found in this scope error: cannot find type in this scope: `OracleInterface` --> 07e2f8fc48632ece.PriceOracle:147:31 | 147 | pub resource OraclePublic: OracleInterface.OraclePublicInterface_Reader, OracleInterface.OraclePublicInterface_Feeder { | ^^^^^^^^^^^^^^^ not found in this scope error: cannot find type in this scope: `OracleInterface` --> 07e2f8fc48632ece.PriceOracle:147:77 | 147 | pub resource OraclePublic: OracleInterface.OraclePublicInterface_Reader, OracleInterface.OraclePublicInterface_Feeder { | ^^^^^^^^^^^^^^^ not found in this scope error: cannot find type in this scope: `OracleInterface` --> 07e2f8fc48632ece.PriceOracle:180:36 | 180 | pub resource OracleCertificate: OracleInterface.IdentityCertificate {} | ^^^^^^^^^^^^^^^ not found in this scope error: cannot find type in this scope: `OracleInterface` --> 07e2f8fc48632ece.PriceOracle:188:36 | 188 | pub resource ReaderCertificate: OracleInterface.IdentityCertificate {} | ^^^^^^^^^^^^^^^ not found in this scope error: cannot find type in this scope: `OracleInterface` --> 07e2f8fc48632ece.PriceOracle:317:24 | 317 | pub resource Admin: OracleInterface.Admin { | ^^^^^^^^^^^^^^^ not found in this scope error: cannot find type in this scope: `OracleInterface` --> 07e2f8fc48632ece.PriceOracle:127:41 | 127 | pub fun fetchPrice(certificate: &OracleInterface.OracleCertificate): UFix64 { | ^^^^^^^^^^^^^^^ not found in this scope error: cannot find variable in this scope: `OracleConfig` --> 07e2f8fc48632ece.PriceOracle:390:57 | 390 | destroy <- self.account.load<@AnyResource>(from: OracleConfig.OracleAdminPath) | ^^^^^^^^^^^^ not found in this scope error: cannot find variable in this scope: `OracleConfig` --> 07e2f8fc48632ece.PriceOracle:391:48 | 391 | self.account.save(<-create Admin(), to: OracleConfig.OracleAdminPath) | ^^^^^^^^^^^^ not found in this scope error: cannot find type in this scope: `OracleInterface` --> 07e2f8fc48632ece.PriceOracle:398:28 | 398 | self.account.link<&{OracleInterface.OraclePublicInterface_Reader}>(OracleConfig.OraclePublicInterface_ReaderPath, target: self._OraclePublicStoragePath) | ^^^^^^^^^^^^^^^ not found in this scope error: ambiguous restricted type --> 07e2f8fc48632ece.PriceOracle:398:27 | 398 | self.account.link<&{OracleInterface.OraclePublicInterface_Reader}>(OracleConfig.OraclePublicInterface_ReaderPath, target: self._OraclePublicStoragePath) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: cannot find variable in this scope: `OracleConfig` --> 07e2f8fc48632ece.PriceOracle:398:75 | 398 | self.account.link<&{OracleInterface.OraclePublicInterface_Reader}>(OracleConfig.OraclePublicInterface_ReaderPath, target: self._OraclePublicStoragePath) | ^^^^^^^^^^^^ not found in this scope error: cannot infer type parameter: `T` --> 07e2f8fc48632ece.PriceOracle:398:8 | 398 | self.account.link<&{OracleInterface.OraclePublicInterface_Reader}>(OracleConfig.OraclePublicInterface_ReaderPath, target: self._OraclePublicStoragePath) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: cannot find type in this scope: `OracleInterface` --> 07e2f8fc48632ece.PriceOracle:399:28 | 399 | self.account.link<&{OracleInterface.OraclePublicInterface_Feeder}>(OracleConfig.OraclePublicInterface_FeederPath, target: self._OraclePublicStoragePath) | ^^^^^^^^^^^^^^^ not found in this scope error: ambiguous restricted type --> 07e2f8fc48632ece.PriceOracle:399:27 | 399 | self.account.link<&{OracleInterface.OraclePublicInterface_Feeder}>(OracleConfig.OraclePublicInterface_FeederPath, target: self._OraclePublicStoragePath) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: cannot find variable in this scope: `OracleConfig` --> 07e2f8fc48632ece.PriceOracle:399:75 | 399 | self.account.link<&{OracleInterface.OraclePublicInterface_Feeder}>(OracleConfig.OraclePublicInterface_FeederPath, target: self._OraclePublicStoragePath) | ^^^^^^^^^^^^ not found in this scope error: cannot infer type parameter: `T` --> 07e2f8fc48632ece.PriceOracle:399:8 | 399 | self.account.link<&{OracleInterface.OraclePublicInterface_Feeder}>(OracleConfig.OraclePublicInterface_FeederPath, target: self._OraclePublicStoragePath) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: cannot find type in this scope: `OracleInterface` --> 07e2f8fc48632ece.PriceOracle:203:71 | 203 | let pricePanelCap = getAccount(oracleAddr).getCapability<&{OracleInterface.PriceFeederPublic}>(PriceOracle._PriceFeederPublicPath!) | ^^^^^^^^^^^^^^^ not found in this scope error: ambiguous restricted type --> 07e2f8fc48632ece.PriceOracle:203:70 | 203 | let pricePanelCap = getAccount(oracleAddr).getCapability<&{OracleInterface.PriceFeederPublic}>(PriceOracle._PriceFeederPublicPath!) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: cannot infer type parameter: `T` --> 07e2f8fc48632ece.PriceOracle:205:16 | 205 | if (pricePanelCap.check()) { | ^^^^^^^^^^^^^^^^^^^^^ error: cannot infer type parameter: `T` --> 07e2f8fc48632ece.PriceOracle:206:28 | 206 | let price = pricePanelCap.borrow()!.fetchPrice(certificate: certificateRef) | ^^^^^^^^^^^^^^^^^^^^^^ error: cannot find type in this scope: `OracleInterface` --> 07e2f8fc48632ece.PriceOracle:258:71 | 258 | let pricePanelCap = getAccount(oracleAddr).getCapability<&{OracleInterface.PriceFeederPublic}>(PriceOracle._PriceFeederPublicPath!) | ^^^^^^^^^^^^^^^ not found in this scope error: ambiguous restricted type --> 07e2f8fc48632ece.PriceOracle:258:70 | 258 | let pricePanelCap = getAccount(oracleAddr).getCapability<&{OracleInterface.PriceFeederPublic}>(PriceOracle._PriceFeederPublicPath!) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: cannot infer type parameter: `T` --> 07e2f8fc48632ece.PriceOracle:259:16 | 259 | if (pricePanelCap.check()) { | ^^^^^^^^^^^^^^^^^^^^^ error: cannot infer type parameter: `T` --> 07e2f8fc48632ece.PriceOracle:260:28 | 260 | let price = pricePanelCap.borrow()!.fetchPrice(certificate: certificateRef) | ^^^^^^^^^^^^^^^^^^^^^^ error: cannot find type in this scope: `OracleInterface` --> 07e2f8fc48632ece.PriceOracle:127:41 | 127 | pub fun fetchPrice(certificate: &OracleInterface.OracleCertificate): UFix64 { | ^^^^^^^^^^^^^^^ not found in this scope error: cannot find type in this scope: `OracleInterface` --> 07e2f8fc48632ece.PriceOracle:337:72 | 337 | let PriceFeederCap = getAccount(feederAddr).getCapability<&{OracleInterface.PriceFeederPublic}>(PriceOracle._PriceFeederPublicPath!) | ^^^^^^^^^^^^^^^ not found in this scope error: ambiguous restricted type --> 07e2f8fc48632ece.PriceOracle:337:71 | 337 | let PriceFeederCap = getAccount(feederAddr).getCapability<&{OracleInterface.PriceFeederPublic}>(PriceOracle._PriceFeederPublicPath!) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: cannot infer type parameter: `T` --> 07e2f8fc48632ece.PriceOracle:338:19 | 338 | assert(PriceFeederCap.check(), message: "Need to prepare data feeder resource capability first.") | ^^^^^^^^^^^^^^^^^^^^^^