             "endBlock"  : endBlockNumber.description
         ]
 
-        ethMakeRequestQUERY (ewm: ewm, query: zip (Array(queryDict.keys), Array(queryDict.values)), data: json) {
+        apiMakeRequestQUERY (ewm: ewm, query: zip (Array(queryDict.keys), Array(queryDict.values)), data: json) {
             (res: Result<JSON, QueryError>) in
 
             let resLogs = res
-                .flatMap({ (json: BlockChainDB.JSON) -> Result<[ETH.Transaction], QueryError> in
+                .flatMap({ (json: JSON) -> Result<[ETH.Transaction], QueryError> in
                     guard let _ = json.asString (name: "status"),
                         let   _ = json.asString (name: "message"),
                         let   result  = json.asArray (name:  "result")

        }
    }

    /// ...

    /// BTC
    public struct BTC {
        typealias Transaction = (btc: BRCoreTransaction, rid: Int32)

    }

    internal func getBlockNumberAsBTC (bwm: BRWalletManager,
                                       blockchainId: String,
                                       rid: Int32,
                                       done: @escaping (UInt64, Int32) -> Void) {
        getBlockchain (blockchainId: blockchainId) { (res: Result<BlockChainDB.Model.Blockchain, BlockChainDB.QueryError>) in
            switch res {
            case let .success (blockchain):
                done (blockchain.blockHeight, rid)

            "id" : rid
        ]

        apiMakeRequestJSON(ewm: ewm, data: json) { (res: Result<JSON, QueryError>) in
            let gasPrice = try! res
                .map { $0.asString (name: "result")! }
                .recover { (ignore) in "0xffc0" }
