interface IERC1400TokensChecker {

  // function canTransfer(
  //   bytes4 functionSig,
  //   address operator,
  //   address from,
  //   address to,
  //   uint256 value,
  //   bytes calldata data,
  //   bytes calldata operatorData
  // ) external view returns (byte, bytes32);

  function canTransferByPartition(
    bytes4 functionSig,
    bytes32 partition,
    address operator,
    address from,
    address to,
    uint256 value,
    bytes calldata data,
    bytes calldata operatorData
    ) external view returns (byte, bytes32, bytes32);

}
/**
 * @title IERC1400TokensChecker
 * @dev IERC1400TokensChecker interface
 */
function canTransferByPartition(
    bytes4 functionSig,
    bytes32 partition,
    address operator,
    address from,
    address to,
    uint256 value,
    bytes calldata data,
    bytes calldata operatorData
    ) external view returns (byte, bytes32, bytes32);
// function canTransfer(
//   bytes4 functionSig,
//   address operator,
//   address from,
//   address to,
//   uint256 value,
//   bytes calldata data,
//   bytes calldata operatorData
// ) external view returns (byte, bytes32);