Error after few calls: Response errors; output already exists

Hi guys
Here is the code of the liquidator for the swaylend app. It calls is_liquidatable contract method in loop, as an argument it requires oracle address which is used inside of is_liquidatable method. And the loop works a few times (like ~20 times) well, but after that it fails with that error

thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: ProviderError("Response errors; output already exists")', src/utils/market_abi_calls.rs:39:14
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

But if remake the call as follows

 pub async fn is_liquidatable(
        market: &MarketContract,
        contract_ids: &[&dyn SettableContract],
        address: Address,
    ) -> bool {
        let tx_params = TxParameters::new(Some(1), Some(100_000_000), Some(0));
        let mut res = market
            .methods()
            .is_liquidatable(address)
            .set_contracts(contract_ids)
            .tx_params(tx_params)
            // .estimate_tx_dependencies(None).await.unwrap()
            .simulate()
            .await;
        if res.is_err() {
            res = market
                .methods()
                .is_liquidatable(address)
                .tx_params(tx_params)
                .simulate()
                .await;
        }
        res.unwrap().value
    }

We well have that error

thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: RevertTransactionError("", [Call { id: 0000000000000000000000000000000000000000000000000000000000000000, to: 2c290844d5b996b32cdf10de4a5294868efc3608e966a809bb03b86b2fecb2c4, amount: 0, asset_id: 0000000000000000000000000000000000000000000000000000000000000000, gas: 100000000, param1: 632439795, param2: 10472, pc: 11664, is: 11664 }, Panic { id: 2c290844d5b996b32cdf10de4a5294868efc3608e966a809bb03b86b2fecb2c4, reason: InstructionResult { reason: ContractNotInInputs, instruction: Instruction { op: 45, ra: 16, rb: 18, rc: 19, rd: 17, imm06: 209, imm12: 1233, imm18: 74961, imm24: 4269265 } }, pc: 313116, is: 11664, contract_id: Some(4bf2826201fb74fc479a6a785cb70f2ce8e45b67010acfd47906993d130a21ff) }, ScriptResult { result: Panic, gas_used: 4878713 }])', src/utils/market_abi_calls.rs:47:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Please help me to fix this error