 MarketingProps = ['campaign', 'source', 'medium', 'term', 'content']
 TopLevelProps = ['hull_ship_id'].concat(StructuredEventProps)
 
-DEFAULT_RATE_LIMIT_CONFIG = {
-  capacity: 25,
-  interval: 60000
-}
-
 Identity = (o)-> o
 
 class HullTrackService extends GenericService

    super(config, gateway)

    @_request = @wrappedRequest
    @rateLimitter = new LeakyBucket(config.trackRateLimit || DEFAULT_RATE_LIMIT_CONFIG)

    RemoteUserStore.addChangeListener (change)=>
      currentUser = RemoteUserStore.getState().user



  request: (opts, callback, errback) =>
    if @rateLimitter
      @rateLimitter.throttle().then => 
        @_sendRequest(opts, callback, errback)
    else
      @_sendRequest(opts, callback, errback)
    
  _sendRequest: (opts, callback, errback) =>
