/*
 * Binance Derivatives Trading Portfolio Margin Pro WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading Portfolio Margin Pro WebSocket Market Streams
 *
 * The version of the OpenAPI document: 1.0.0
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

#![allow(unused_imports)]
use crate::derivatives_trading_portfolio_margin_pro::websocket_streams::models;
use serde::{Deserialize, Deserializer, Serialize, de::Error};
use serde_json::Value;

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct PmProAccountUpdate {
    #[serde(rename = "E", skip_serializing_if = "Option::is_none")]
    pub e_uppercase: Option<i64>,
    #[serde(rename = "u", skip_serializing_if = "Option::is_none")]
    pub u: Option<String>,
    #[serde(rename = "eq", skip_serializing_if = "Option::is_none")]
    pub eq: Option<String>,
    #[serde(rename = "ae", skip_serializing_if = "Option::is_none")]
    pub ae: Option<String>,
    #[serde(rename = "im", skip_serializing_if = "Option::is_none")]
    pub im: Option<String>,
    #[serde(rename = "mm", skip_serializing_if = "Option::is_none")]
    pub mm: Option<String>,
    #[serde(rename = "avb", skip_serializing_if = "Option::is_none")]
    pub avb: Option<String>,
    #[serde(rename = "vmw", skip_serializing_if = "Option::is_none")]
    pub vmw: Option<String>,
}

impl PmProAccountUpdate {
    #[must_use]
    pub fn new() -> PmProAccountUpdate {
        PmProAccountUpdate {
            e_uppercase: None,
            u: None,
            eq: None,
            ae: None,
            im: None,
            mm: None,
            avb: None,
            vmw: None,
        }
    }
}
