anchor.diff:      let emitEnum (e: Browser.Enum) = Pt.printl "declare var %s: string;" e.Name
       browser.Enums |> Array.iter emitEnum
   
  -let EmitEventHandlerThis = function
  -| (_, "") -> "this: this"
  -| (Worker, _) -> "this: WorkerGlobalScope"
  -| _ -> "this: Window"
  +let EmitEventHandlerThis flavor (prefix: string) =
  +    if prefix = "" then "this: this, "
  +    else match GetGlobalPollutor flavor with
  +         | Some pollutor -> "this: " + pollutor.Name + ", "
  +         | _ -> ""
   
   let EmitProperties flavor prefix (emitScope: EmitScope) (i: Browser.Interface)=
       let emitPropertyFromJson (p: ItemsType.Root) =
  
positive.code:         let eventType =
              getEventTypeInInterface eHandler.EventName i.Name
          Pt.printl
              "%saddEventListener(type: \"%s\", listener: (%s, ev: %s) => any, useCapture?: boolean): void;"
              prefix eHandler.EventName (EmitEventHandlerThis (flavor, prefix)) eventType
  
      let fPrefix = if prefix.StartsWith "declare var" then "declare function " else ""
  
  
negative.code:                                 getEventTypeInInterface p.EventHandler.Value i.Name
                              else 
                                  "Event"
                          String.Format("({0}ev: {1}) => any", EmitEventHandlerThis flavor prefix, eType)
                      | _ -> DomTypeToTsType p.Type
                  let pTypeAndNull = if p.Nullable.IsSome then makeNullable pType else pType
                  let readOnlyModifier = if p.ReadOnly.IsSome && prefix = "" then "readonly " else ""
  