# TerminatedWhileReentrant (/docs/errors/chain/TerminatedWhileReentrant)

`seal_terminate` was called on a contract that appears more than once on the call stack, so termination was refused. Check the call chain for reentrant calls into the contract being terminated.

Declared by the `Contracts` pallet; it classifies to the semantic code [`invalid_argument`](/docs/errors/invalid-argument).

## Remediation [#remediation]

Check the argument values against the operation schema

The same explanation is available in the terminal: `btcli explain TerminatedWhileReentrant`.
