declare function local:id($el) as function() as item()* {function(){ $el }};
declare function local:new() {local:id(())};
declare function local:new($map,$item) {local:id(($map(),$item))};
let $nb := 100000 return
let $testid := fn:fold-left(for $i in 1 to $nb return $i,local:new(), function($map,$entry){local:new( $map,$entry )})
let $basexmap := fn:fold-left(for $i in 1 to $nb return map:entry($i,$i),map:entry(0,0), function($entry,$map){map:new( ($map,$entry) )})
return (fn:count(prof:time( $testid )),fn:count(prof:time( $basexmap )))