@classmethod
def from_dict(cls, transaction):
    """
        Creates a vote transaction

        :param transaction: transaction (dict)
        :return: (Vote)
        """
    self = cls(transaction['fee'], _error_use_class_method=False)
    self._sender_public_key = transaction['senderPublicKey']
    self._recipient_id = transaction['recipientId']
    self._timestamp = transaction['timestamp']
    self._asset['votes'] = transaction['asset']['votes']
    self.sign_from_dict(transaction)
    return self
