'Restore an ask from the network
:param data: OfferPayload
:return: Restored ask
:rtype: Ask'

@classmethod
def from_network(cls, data):

    assert hasattr(data, 'trader_id'), isinstance(data.trader_id, TraderId)
    assert hasattr(data, 'message_number'), isinstance(data.message_number, MessageNumber)
    assert hasattr(data, 'order_number'), isinstance(data.order_number, OrderNumber)
    assert hasattr(data, 'price'), isinstance(data.price, Price)
    assert hasattr(data, 'quantity'), isinstance(data.quantity, Quantity)
    assert hasattr(data, 'timeout'), isinstance(data.timeout, Timeout)
    assert hasattr(data, 'timestamp'), isinstance(data.timestamp, Timestamp)
    assert hasattr(data, 'public_key'), isinstance(data.public_key, str)
    assert hasattr(data, 'signature'), isinstance(data.signature, str)
    return cls(MessageId(data.trader_id, data.message_number), OrderId(data.trader_id, data.order_number), data.price, data.quantity, data.timeout, data.timestamp, data.public_key, data.signature)
