<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_transactions(self):
 """Get all your deposits and withdrawals. Returns: dict: lists of your NMR and USD transactions The returned dict has the following structure: * nmrDeposits (`list`) contains items with fields: * from (`str`) * posted (`bool`) * status (`str`) * to (`str`) * txHash (`str`) * value (`decimal.Decimal`) * nmrWithdrawals"` (`list`) contains items with fields: * from"` (`str`) * posted"` (`bool`) * status"` (`str`) * to"` (`str`) * txHash"` (`str`) * value"` (`decimal.Decimal`) * usdWithdrawals"` (`list`) contains items with fields: * confirmTime"` (`datetime` or `None`) * ethAmount"` (`str`) * from"` (`str`) * posted"` (`bool`) * sendTime"` (`datetime`) * status"` (`str`) * to (`str`) * txHash (`str`) * usdAmount (`decimal.Decimal`) Example: {'nmrDeposits': [ {'from': '0x54479..9ec897a', 'posted': True, 'status': 'confirmed', 'to': '0x0000000000000000000001', 'txHash': '0x52..e2056ab', 'value': Decimal('9.0')}, .. ], 'nmrWithdrawals': [ {'from': '0x0000000000000000..002', 'posted': True, 'status': 'confirmed', 'to': '0x00000000000..001', 'txHash': '0x1278..266c', 'value': Decimal('2.0')}, .. ], 'usdWithdrawals': [ {'confirmTime': datetime.datetime(2018, 2, 11, 17, 54, 2, 785430, tzinfo=tzutc()), 'ethAmount': '0.295780674909307710', 'posted': True, 'sendTime': datetime.datetime(2018, 2, 11, 17, 53, 25, 235035, tzinfo=tzutc()), 'status': 'confirmed', 'usdAmount': Decimal('10.07')}, ..]} """

        query = """
          query {
            user {
              nmrDeposits {
                from
                posted
                status
                to
                txHash
                value
              }
              nmrWithdrawals {
                from
                posted
                status
                to
                txHash
                value
              }
              usdWithdrawals {
                ethAmount
                confirmTime
                from
                posted
                sendTime
                status
                to
                txHash
                usdAmount
              }
            }
          }
        """
        txs = self.raw_query(query, authorization=True)['data']['user']
        # convert strings to python objects
        for t in txs['usdWithdrawals']:
            utils.replace(t, "confirmTime", utils.parse_datetime_string)
            utils.replace(t, "sendTime", utils.parse_datetime_string)
            utils.replace(t, "usdAmount", utils.parse_float_string)
        for t in txs["nmrWithdrawals"]:
            utils.replace(t, "value", utils.parse_float_string)
        for t in txs["nmrDeposits"]:
            utils.replace(t, "value", utils.parse_float_string)
        return txs