> ## Documentation Index
> Fetch the complete documentation index at: https://docs.codeant.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Best practice

<AccordionGroup>
  <Accordion title="use-ownable2step">
    By demanding that the receiver of the owner permissions actively accept via a contract call of its own,  `Ownable2Step` and `Ownable2StepUpgradeable` prevent the contract ownership from accidentally being transferred  to an address that cannot handle it.
  </Accordion>

  <Accordion title="use-abi-encodecall-instead-of-encodewithselector">
    To guarantee arguments type safety it is recommended to use `abi.encodeCall` instead of `abi.encodeWithSelector`.
  </Accordion>
</AccordionGroup>
