[Error Code: 1101] cadence runtime error Execution failed: error: cannot deploy invalid contract --> 1c1a81fdf97d052bef00329eefde87f5c1f3dee9ed1e319d6894ec8a986c93d1:4:3 | 4 | signer.contracts.add(name: name, code: code.decodeHex() ) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: cannot find declaration `OracleInterface` in `cec15c814971c1dc.OracleInterface` --> e385412159992e11.PriceOracle:28:7 | 28 | import OracleInterface from 0xcec15c814971c1dc | ^^^^^^^^^^^^^^^ available exported declarations are: error: cannot find declaration `OracleConfig` in `cec15c814971c1dc.OracleConfig` --> e385412159992e11.PriceOracle:29:7 | 29 | import OracleConfig from 0xcec15c814971c1dc | ^^^^^^^^^^^^ available exported declarations are: error: ambiguous restricted type --> e385412159992e11.PriceOracle:398:27 | 398 | self.account.link<&{OracleInterface.OraclePublicInterface_Reader}>(OracleConfig.OraclePublicInterface_ReaderPath, target: self._OraclePublicStoragePath) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: cannot infer type parameter: `T` --> e385412159992e11.PriceOracle:398:8 | 398 | self.account.link<&{OracleInterface.OraclePublicInterface_Reader}>(OracleConfig.OraclePublicInterface_ReaderPath, target: self._OraclePublicStoragePath) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: ambiguous restricted type --> e385412159992e11.PriceOracle:399:27 | 399 | self.account.link<&{OracleInterface.OraclePublicInterface_Feeder}>(OracleConfig.OraclePublicInterface_FeederPath, target: self._OraclePublicStoragePath) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: cannot infer type parameter: `T` --> e385412159992e11.PriceOracle:399:8 | 399 | self.account.link<&{OracleInterface.OraclePublicInterface_Feeder}>(OracleConfig.OraclePublicInterface_FeederPath, target: self._OraclePublicStoragePath) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: ambiguous restricted type --> e385412159992e11.PriceOracle:203:70 | 203 | let pricePanelCap = getAccount(oracleAddr).getCapability<&{OracleInterface.PriceFeederPublic}>(PriceOracle._PriceFeederPublicPath!) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: cannot infer type parameter: `T` --> e385412159992e11.PriceOracle:205:16 | 205 | if (pricePanelCap.check()) { | ^^^^^^^^^^^^^^^^^^^^^ error: cannot infer type parameter: `T` --> e385412159992e11.PriceOracle:206:28 | 206 | let price = pricePanelCap.borrow()!.fetchPrice(certificate: certificateRef) | ^^^^^^^^^^^^^^^^^^^^^^ error: ambiguous restricted type --> e385412159992e11.PriceOracle:258:70 | 258 | let pricePanelCap = getAccount(oracleAddr).getCapability<&{OracleInterface.PriceFeederPublic}>(PriceOracle._PriceFeederPublicPath!) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: cannot infer type parameter: `T` --> e385412159992e11.PriceOracle:259:16 | 259 | if (pricePanelCap.check()) { | ^^^^^^^^^^^^^^^^^^^^^ error: cannot infer type parameter: `T` --> e385412159992e11.PriceOracle:260:28 | 260 | let price = pricePanelCap.borrow()!.fetchPrice(certificate: certificateRef) | ^^^^^^^^^^^^^^^^^^^^^^ error: ambiguous restricted type --> e385412159992e11.PriceOracle:337:71 | 337 | let PriceFeederCap = getAccount(feederAddr).getCapability<&{OracleInterface.PriceFeederPublic}>(PriceOracle._PriceFeederPublicPath!) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ error: cannot infer type parameter: `T` --> e385412159992e11.PriceOracle:338:19 | 338 | assert(PriceFeederCap.check(), message: "Need to prepare data feeder resource capability first.") | ^^^^^^^^^^^^^^^^^^^^^^