/*
 * Binance Derivatives Trading USDS Futures WebSocket Market Streams
 *
 * OpenAPI Specification for the Binance Derivatives Trading USDS Futures 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_usds_futures::websocket_streams::models;
use serde::{Deserialize, Deserializer, Serialize, de::Error};
use serde_json::Value;

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct IndividualSymbolTickerStreamsResponse {
    #[serde(rename = "e", skip_serializing_if = "Option::is_none")]
    pub e: Option<String>,
    #[serde(rename = "E", skip_serializing_if = "Option::is_none")]
    pub e_uppercase: Option<i64>,
    #[serde(rename = "s", skip_serializing_if = "Option::is_none")]
    pub s: Option<String>,
    #[serde(rename = "p", skip_serializing_if = "Option::is_none")]
    pub p: Option<String>,
    #[serde(rename = "P", skip_serializing_if = "Option::is_none")]
    pub p_uppercase: Option<String>,
    #[serde(rename = "w", skip_serializing_if = "Option::is_none")]
    pub w: Option<String>,
    #[serde(rename = "c", skip_serializing_if = "Option::is_none")]
    pub c: Option<String>,
    #[serde(rename = "Q", skip_serializing_if = "Option::is_none")]
    pub q_uppercase: Option<String>,
    #[serde(rename = "o", skip_serializing_if = "Option::is_none")]
    pub o: Option<String>,
    #[serde(rename = "h", skip_serializing_if = "Option::is_none")]
    pub h: Option<String>,
    #[serde(rename = "l", skip_serializing_if = "Option::is_none")]
    pub l: Option<String>,
    #[serde(rename = "v", skip_serializing_if = "Option::is_none")]
    pub v: Option<String>,
    #[serde(rename = "q", skip_serializing_if = "Option::is_none")]
    pub q: Option<String>,
    #[serde(rename = "O", skip_serializing_if = "Option::is_none")]
    pub o_uppercase: Option<i64>,
    #[serde(rename = "C", skip_serializing_if = "Option::is_none")]
    pub c_uppercase: Option<i64>,
    #[serde(rename = "F", skip_serializing_if = "Option::is_none")]
    pub f_uppercase: Option<i64>,
    #[serde(rename = "L", skip_serializing_if = "Option::is_none")]
    pub l_uppercase: Option<i64>,
    #[serde(rename = "n", skip_serializing_if = "Option::is_none")]
    pub n: Option<i64>,
}

impl IndividualSymbolTickerStreamsResponse {
    #[must_use]
    pub fn new() -> IndividualSymbolTickerStreamsResponse {
        IndividualSymbolTickerStreamsResponse {
            e: None,
            e_uppercase: None,
            s: None,
            p: None,
            p_uppercase: None,
            w: None,
            c: None,
            q_uppercase: None,
            o: None,
            h: None,
            l: None,
            v: None,
            q: None,
            o_uppercase: None,
            c_uppercase: None,
            f_uppercase: None,
            l_uppercase: None,
            n: None,
        }
    }
}
