def init_bytearray(payload=b'', encoding='utf-8'):
    """Initialize a bytearray from the payload."""
    if isinstance(payload, bytearray):
        return payload
    if isinstance(payload, int):
        return bytearray(payload)
    if not isinstance(payload, bytes):
        try:
            return bytearray(payload.encode(encoding=encoding))
        except AttributeError:
            raise ValueError("payload must be a str or bytes")

    return bytearray(payload)