State-read vs state-free.
external pure returns
return x * 2
// SPDX-License-Identifier: MIT pragma solidity ^0.8.20; contract Math { function double(uint256 x) external /* TODO */ returns (uint256) { // TODO } }