class BinanceUsStreamingExchange extends BinanceStreamingExchange {
  private static final Logger LOG = LoggerFactory.getLogger(BinanceStreamingExchange.class);
  private static final String API_BASE_URI = "wss://stream.binance.us:9443/";

  @Override
  protected String getStreamingBaseUri() {
    return API_BASE_URI;
  }

  // This is needed since BinanceStreamingExchange extends BinanceExchange which has the spec
  // configured for binance.com
  @Override
  public ExchangeSpecification getDefaultExchangeSpecification() {<FILL_FUNCTION_BODY>}
}


    ExchangeSpecification spec = new ExchangeSpecification(this.getClass());
    spec.setSslUri("https://api.binance.us");
    spec.setHost("www.binance.us");
    spec.setPort(80);
    spec.setExchangeName("Binance US");
    spec.setExchangeDescription("Binance US Exchange.");
    AuthUtils.setApiAndSecretKey(spec, "binanceus");
    return spec;
  
<methods>public non-sealed void <init>() ,public java.lang.String buildSubscriptionStreams(info.bitrich.xchangestream.core.ProductSubscription) ,public transient Completable connect(info.bitrich.xchangestream.binance.KlineSubscription, info.bitrich.xchangestream.core.ProductSubscription[]) ,public transient Completable connect(info.bitrich.xchangestream.core.ProductSubscription[]) ,public Observable<info.bitrich.xchangestream.service.netty.ConnectionStateModel.State> connectionStateObservable() ,public Observable<java.lang.Object> connectionSuccess() ,public void disableLiveSubscription() ,public Completable disconnect() ,public void enableLiveSubscription() ,public info.bitrich.xchangestream.binance.BinanceStreamingAccountService getStreamingAccountService() ,public info.bitrich.xchangestream.binance.BinanceStreamingMarketDataService getStreamingMarketDataService() ,public info.bitrich.xchangestream.binance.BinanceStreamingTradeService getStreamingTradeService() ,public boolean isAlive() ,public Observable<java.lang.Throwable> reconnectFailure() ,public void setChannelInactiveHandler(info.bitrich.xchangestream.service.netty.WebSocketClientHandler.WebSocketMessageHandler) ,public void useCompressedMessages(boolean) <variables>public static final java.lang.String FETCH_ORDER_BOOK_LIMIT,private static final Logger LOG,public static final java.lang.String USE_HIGHER_UPDATE_FREQUENCY,public static final java.lang.String USE_REALTIME_BOOK_TICKER,private static final java.lang.String WS_API_BASE_URI,private static final java.lang.String WS_SANDBOX_API_BASE_URI,private int oderBookFetchLimitParameter,private java.lang.Runnable onApiCall,private java.lang.String orderBookUpdateFrequencyParameter,private boolean realtimeOrderBookTicker,private info.bitrich.xchangestream.binance.BinanceStreamingAccountService streamingAccountService,private info.bitrich.xchangestream.binance.BinanceStreamingMarketDataService streamingMarketDataService,private info.bitrich.xchangestream.binance.BinanceStreamingService streamingService,private info.bitrich.xchangestream.binance.BinanceStreamingTradeService streamingTradeService,private info.bitrich.xchangestream.binance.BinanceUserDataChannel userDataChannel,private info.bitrich.xchangestream.binance.BinanceUserDataStreamingService userDataStreamingService