anchor.diff:            |_ -> None)
         |> Seq.map
           (fun (name,args,rty,cc,(fname,_,_,_)) ->
  -          let rcc=ccToRust cc
  -          let text=System.String.Format("    pub fn {0}({1}) -> {2};",name,((List.map funcArgToRust args) |> String.concat(", ")),(tyToRust rty))
  +          let rcc=ccToRustNoQuotes cc
  +          let sb = new System.Text.StringBuilder()
  +          sb.AppendLine(sprintf "EXTERN!{%s fn %s(" rcc name) |> ignore
  +          for arg in List.map funcArgToRust args do
  +            sb.AppendLine(sprintf "    %s," arg) |> ignore
  +          sb.Append(sprintf ") -> %s}" (tyToRust rty)) |> ignore
             let f=(rsfilename fname)
  -          let f'=f.Substring(0,f.Length-3)+"_sys.rs"
  -          (f',rcc,text))
  +          (f, rcc, sb.ToString()))
         |> Seq.groupBy (fun (a,b,c) -> a)
         |> Seq.iter
           (fun (f,txts) ->
  
positive.code:       match Map.tryFind name annotations.defines with
        |Some(Exclude) -> ()
        |Some(UseType(t)) ->
          apl <| sprintf "pub const %s: %s = %s;" name t orgs
        |None ->
            match mc with
            |MCUInt64(_) -> 
  
negative.code:             |> Seq.groupBy (fun (a,b,c) -> b)
              |> Seq.iter 
                (fun (rcc, lines) ->
                  lines |> Seq.iter (fun (_,_,t) -> apl t)
                  ))
      
    let createIIDs()=
  