anchor.diff:      and [<AllowNullLiteral>] Transform = 
           inherit Readable
           inherit Writable
  -        [<Emit("new $0($1)")>] abstract Create: TransformOptions -> Transform
           abstract _transform: chunk: obj * encoding: string * callback: Function -> unit
           abstract _flush: callback: Function -> unit
   
       and [<AllowNullLiteral>] TransformStatic = 
  -        [<Emit("new $0()")>] static member Create(transformOptions:TransformOptions): Transform = jsNative
  +        [<Emit("new $0()")>] abstract Create: transformOptions:TransformOptions -> Transform
   
   
       and [<AllowNullLiteral>] PassThrough =
           inherit Transform
   
       and [<AllowNullLiteral>] PassThroughStatic = 
  -        [<Emit("new $0()")>] static member Create(): PassThrough = jsNative
  +        [<Emit("new $0()")>] abstract Create: unit -> PassThrough
   
       
       and Globals =
  +        [<Import("Stream", "stream")>]
           member __.Stream with get(): StreamStatic = jsNative and set(v: StreamStatic): unit = jsNative
  +        [<Import("Readable", "stream")>]
           member __.Readable with get(): ReadableStatic = jsNative and set(v: ReadableStatic): unit = jsNative
  +        [<Import("Writable", "stream")>]
           member __.Writable with get(): WritableStatic = jsNative and set(v: WritableStatic): unit = jsNative
  +        [<Import("Duplex", "stream")>]
           member __.Duplex with get(): DuplexStatic = jsNative and set(v: DuplexStatic): unit = jsNative
           member __.TransformOptions with get(): TransformOptions = jsNative and set(v: TransformOptions): unit = jsNative
  +        [<Import("Transform", "stream")>]
           member __.Transform with get(): TransformStatic = jsNative and set(v: TransformStatic): unit = jsNative
  +        [<Import("PassThrough", "stream")>]
           member __.PassThrough with get(): PassThroughStatic = jsNative and set(v: PassThroughStatic): unit = jsNative
   
   
  -let [<Import("*","stream")>] stream: stream_types.Globals = jsNative
  +let stream: stream_types.Globals = jsNative
   // Stream End
  -
   
   type [<AllowNullLiteral>] Console =
       abstract ``assert``: value: obj * ?message: string * [<ParamArray>] optionalParams: obj[] -> unit
  
positive.code:         abstract read: ?size: int -> U2<string option, buffer_types.Buffer option>
  
      and [<AllowNullLiteral>] ReadableStatic = 
          [<Emit("new $0()")>] static member Create(readableOptions:ReadableOptions): Readable = jsNative
  
      and WritableOptions = {
          highWaterMark: float option;
  
negative.code:         abstract pipe: destination: 'T * ?options: obj -> 'T
  
      and [<AllowNullLiteral>] StreamStatic = 
          [<Emit("new $0()")>] abstract Create: unit -> Stream
  
      and ReadableOptions = {
          highWaterMark: float option
  