diff --git a/README.md b/README.md index 86dc898..722a536 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,7 @@ a library or application, either by hand or via a ppx. - [x] messages - [x] counters - [ ] other metrics? +- [x] ppx to help instrumentation ### Usage @@ -74,6 +75,54 @@ Opening it in https://ui.perfetto.dev we get something like this: ![screenshot of perfetto UI](media/ui.png) +## ppx_trace + +On OCaml >= 4.12, and with `ppxlib` installed, you can install `ppx_trace`. +This is a preprocessor that will rewrite like so: + +```ocaml +let%trace f x y z = + do_sth x; + do_sth y; + begin + let%trace () = "sub-span" in + do_sth z + end +``` + +This more or less corresponds to: + +```ocaml +let f x y z = + let _trace_span = Trace_core.enter_span ~__FILE__ ~__LINE__ "Foo.f" in + match + do_sth x; + do_sth y; + begin + let _trace_span = Trace_core.enter_span ~__FILE__ ~__LINE__ "sub-span" in + match do_sth z with + | res -> + Trace_core.exit_span _trace_span; + res + | exception e -> + Trace_core.exit_span _trace_span + raise e + end; + with + | res -> + Trace_core.exit_span _trace_span + res + | exception e -> + Trace_core.exit_span _trace_span + raise e +``` + +### Dune configuration + +In your `library` or `executable` stanza, add: `(preprocess (pps ppx_trace))`. +The dependency on `trace.core` is automatically added. You still need to +configure a backend to actually do collection. + ### Backends Concrete tracing or observability formats such as: diff --git a/dune-project b/dune-project index e69091a..c2f4f4b 100644 --- a/dune-project +++ b/dune-project @@ -21,6 +21,18 @@ (tags (trace tracing observability profiling))) +(package + (name ppx_trace) + (synopsis "ppx-based instrumentation for trace") + (depends + (ocaml (>= 4.12)) ; we use __FUNCTION__ + ppxlib + (trace (= :version)) + (trace-tef (and (= :version) :with-test)) + dune) + (tags + (trace tracing observability profiling ppx))) + (package (name trace-tef) (synopsis "A simple backend for trace, emitting Catapult/TEF JSON into a file") diff --git a/ppx_trace.opam b/ppx_trace.opam new file mode 100644 index 0000000..b00d78c --- /dev/null +++ b/ppx_trace.opam @@ -0,0 +1,35 @@ +# This file is generated by dune, edit dune-project instead +opam-version: "2.0" +version: "0.5" +synopsis: "ppx-based instrumentation for trace" +maintainer: ["Simon Cruanes"] +authors: ["Simon Cruanes"] +license: "MIT" +tags: ["trace" "tracing" "observability" "profiling" "ppx"] +homepage: "https://github.com/c-cube/ocaml-trace" +bug-reports: "https://github.com/c-cube/ocaml-trace/issues" +depends: [ + "ocaml" {>= "4.12"} + "ppxlib" + "trace" {= version} + "trace-tef" {= version & with-test} + "dune" {>= "2.9"} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/c-cube/ocaml-trace.git" diff --git a/src/core/collector.ml b/src/core/collector.ml index 0b7deaf..78a553c 100644 --- a/src/core/collector.ml +++ b/src/core/collector.ml @@ -31,6 +31,23 @@ module type S = sig to be efficient to implement in async contexts. @since 0.3 *) + val enter_span : + __FUNCTION__:string option -> + __FILE__:string -> + __LINE__:int -> + data:(string * user_data) list -> + string -> + span + (** Enter a new implicit span. For many uses cases, {!with_span} will + be easier to use. + @since NEXT_RELEASE *) + + val exit_span : span -> unit + (** Exit span. This should be called on the same thread + as the corresponding {!enter_span}, and nest properly with + other calls to enter/exit_span and {!with_span}. + @since NEXT_RELEASE *) + val enter_manual_span : parent:explicit_span option -> flavor:[ `Sync | `Async ] option -> diff --git a/src/core/trace_core.ml b/src/core/trace_core.ml index 2ee7414..9b63b15 100644 --- a/src/core/trace_core.ml +++ b/src/core/trace_core.ml @@ -29,6 +29,19 @@ let[@inline] with_span ?__FUNCTION__ ~__FILE__ ~__LINE__ ?data name f = with_span_collector_ collector ?__FUNCTION__ ~__FILE__ ~__LINE__ ?data name f +let[@inline] enter_span ?__FUNCTION__ ~__FILE__ ~__LINE__ + ?(data = data_empty_build_) name : span = + match A.get collector with + | None -> Collector.dummy_span + | Some (module C) -> + let data = data () in + C.enter_span ~__FUNCTION__ ~__FILE__ ~__LINE__ ~data name + +let[@inline] exit_span sp : unit = + match A.get collector with + | None -> () + | Some (module C) -> C.exit_span sp + let enter_explicit_span_collector_ (module C : Collector.S) ~parent ~flavor ?__FUNCTION__ ~__FILE__ ~__LINE__ ?(data = data_empty_build_) name : explicit_span = diff --git a/src/core/trace_core.mli b/src/core/trace_core.mli index 42c287a..afcf5ec 100644 --- a/src/core/trace_core.mli +++ b/src/core/trace_core.mli @@ -34,6 +34,16 @@ val with_span : see {!enter_manual_span}. *) +val enter_span : + ?__FUNCTION__:string -> + __FILE__:string -> + __LINE__:int -> + ?data:(unit -> (string * user_data) list) -> + string -> + span + +val exit_span : span -> unit + val add_data_to_span : span -> (string * user_data) list -> unit (** Add structured data to the given active span (see {!with_span}). Behavior is not specified if the span has been exited. diff --git a/src/ppx/dune b/src/ppx/dune new file mode 100644 index 0000000..451c5fc --- /dev/null +++ b/src/ppx/dune @@ -0,0 +1,8 @@ + +(library + (name ppx_trace) + (public_name ppx_trace) + (kind ppx_rewriter) + (preprocess (pps ppxlib.metaquot)) + (ppx_runtime_libraries trace.core) + (libraries ppxlib)) diff --git a/src/ppx/ppx_trace.ml b/src/ppx/ppx_trace.ml new file mode 100644 index 0000000..8f59221 --- /dev/null +++ b/src/ppx/ppx_trace.ml @@ -0,0 +1,82 @@ +open Ppxlib + +let location_errorf ~loc fmt = + Format.kasprintf + (fun err -> + raise (Ocaml_common.Location.Error (Ocaml_common.Location.error ~loc err))) + fmt + +(** {2 let expression} *) + +let expand_let ~ctxt (name : string) body = + let loc = Expansion_context.Extension.extension_point_loc ctxt in + Ast_builder.Default.( + [%expr + let _trace_span = + Trace_core.enter_span ~__FILE__ ~__LINE__ [%e estring ~loc name] + in + try + let res = [%e body] in + Trace_core.exit_span _trace_span; + res + with exn -> + Trace_core.exit_span _trace_span; + raise exn]) + +let extension_let = + Extension.V3.declare "trace" Extension.Context.expression + (let open! Ast_pattern in + single_expr_payload + (pexp_let nonrecursive + (value_binding + ~pat:(ppat_construct (lident (string "()")) none) + ~expr:(estring __) + ^:: nil) + __)) + expand_let + +let rule_let = Ppxlib.Context_free.Rule.extension extension_let + +(** {2 Toplevel binding} *) + +let expand_top_let ~ctxt rec_flag (vbs : _ list) = + let loc = Expansion_context.Extension.extension_point_loc ctxt in + Ast_builder.Default.( + (* go in functions, and add tracing around the body *) + let rec push_into_fun (e : expression) : expression = + match e.pexp_desc with + | Pexp_fun (lbl, lbl_expr, pat, body) -> + pexp_fun ~loc:e.pexp_loc lbl lbl_expr pat @@ push_into_fun body + | _ -> + [%expr + let _trace_span = + Trace_core.enter_span ~__FILE__ ~__LINE__ __FUNCTION__ + in + match [%e e] with + | res -> + Trace_core.exit_span _trace_span; + res + | exception exn -> + let bt = Printexc.get_raw_backtrace () in + Trace_core.exit_span _trace_span; + Printexc.raise_with_backtrace exn bt] + in + + let tr_vb (vb : value_binding) : value_binding = + let expr = push_into_fun vb.pvb_expr in + { vb with pvb_expr = expr } + in + + let vbs = List.map tr_vb vbs in + pstr_value ~loc rec_flag vbs) + +let extension_top_let = + Extension.V3.declare "trace" Extension.Context.structure_item + (let open! Ast_pattern in + pstr (pstr_value __ __ ^:: nil)) + expand_top_let + +let rule_top_let = Ppxlib.Context_free.Rule.extension extension_top_let + +let () = + Driver.register_transformation ~rules:[ rule_let; rule_top_let ] "ppx_trace" diff --git a/src/tef/trace_tef.ml b/src/tef/trace_tef.ml index 42c1e8d..aed6653 100644 --- a/src/tef/trace_tef.ml +++ b/src/tef/trace_tef.ml @@ -386,19 +386,34 @@ let collector ~out () : collector = else Thread.id (Thread.self ()) - let with_span ~__FUNCTION__:fun_name ~__FILE__:_ ~__LINE__:_ ~data name f = + let[@inline] enter_span_ ~fun_name ~data name : span = let span = Int64.of_int (A.fetch_and_add span_id_gen_ 1) in let tid = get_tid_ () in let time_us = now_us () in B_queue.push events (E_define_span { tid; name; time_us; id = span; fun_name; data }); + span - let finally () = - let time_us = now_us () in - B_queue.push events (E_exit_span { id = span; time_us }) - in + let enter_span ~__FUNCTION__:fun_name ~__FILE__:_ ~__LINE__:_ ~data name : + span = + enter_span_ ~fun_name ~data name - Fun.protect ~finally (fun () -> f span) + let exit_span span : unit = + let time_us = now_us () in + B_queue.push events (E_exit_span { id = span; time_us }) + + (* re-raise exception with its backtrace *) + external reraise : exn -> 'a = "%reraise" + + let with_span ~__FUNCTION__:fun_name ~__FILE__:_ ~__LINE__:_ ~data name f = + let span = enter_span_ ~fun_name ~data name in + try + let x = f span in + exit_span span; + x + with exn -> + exit_span span; + reraise exn let add_data_to_span span data = if data <> [] then B_queue.push events (E_add_data { id = span; data }) diff --git a/test/dune b/test/dune index fdefb87..e52a276 100644 --- a/test/dune +++ b/test/dune @@ -2,5 +2,12 @@ (test (name t1) (package trace-tef) + (modules t1) (libraries trace trace-tef)) +(test + (name t2) + (package ppx_trace) + (modules t2) + (preprocess (pps ppx_trace)) + (libraries trace-tef)) diff --git a/test/t2.expected b/test/t2.expected new file mode 100644 index 0000000..673448c --- /dev/null +++ b/test/t2.expected @@ -0,0 +1,933 @@ +[{"pid":2,"name":"process_name","ph":"M","args": {"name":"main"}}, +{"pid":2,"tid": 3,"name":"thread_name","ph":"M","args": {"name":"t1"}}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 6.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 8.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 5.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 12.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 15.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 17.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 14.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 11.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 4.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 24.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 27.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 29.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 26.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 23.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 35.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 37.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 34.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 41.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 44.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 46.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 43.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 40.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 33.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 22.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 3.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 56.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 59.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 61.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 58.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 55.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 67.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 69.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 66.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 73.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 76.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 78.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 75.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 72.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 65.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 54.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 87.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 89.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 86.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 93.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 96.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 98.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 95.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 92.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 85.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 105.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 108.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 110.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 107.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 104.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 116.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 118.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 115.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 122.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 125.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 127.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 124.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 121.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 114.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 103.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 84.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 53.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 133.00,"ts": 2.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 140.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 143.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 145.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 142.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 139.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 151.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 153.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 150.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 157.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 160.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 162.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 159.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 156.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 149.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 138.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 171.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 173.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 170.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 177.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 180.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 182.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 179.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 176.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 169.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 189.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 192.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 194.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 191.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 188.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 200.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 202.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 199.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 206.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 209.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 211.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 208.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 205.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 198.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 187.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 168.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 137.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 223.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 225.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 222.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 229.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 232.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 234.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 231.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 228.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 221.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 241.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 244.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 246.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 243.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 240.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 252.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 254.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 251.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 258.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 261.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 263.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 260.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 257.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 250.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 239.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 220.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 273.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 276.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 278.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 275.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 272.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 284.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 286.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 283.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 290.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 293.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 295.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 292.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 289.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 282.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 271.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 304.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 306.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 303.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 310.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 313.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 315.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 312.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 309.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 302.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 322.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 325.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 327.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 324.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 321.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 333.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 335.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 332.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 339.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 342.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 344.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 341.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 338.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 331.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 320.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 301.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 270.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 133.00,"ts": 219.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 217.00,"ts": 136.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 353.00,"ts": 1.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 360.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 363.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 365.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 362.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 359.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 371.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 373.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 370.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 377.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 380.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 382.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 379.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 376.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 369.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 358.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 391.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 393.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 390.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 397.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 400.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 402.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 399.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 396.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 389.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 409.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 412.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 414.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 411.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 408.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 420.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 422.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 419.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 426.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 429.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 431.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 428.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 425.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 418.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 407.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 388.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 357.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 443.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 445.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 442.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 449.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 452.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 454.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 451.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 448.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 441.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 461.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 464.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 466.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 463.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 460.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 472.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 474.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 471.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 478.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 481.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 483.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 480.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 477.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 470.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 459.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 440.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 493.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 496.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 498.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 495.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 492.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 504.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 506.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 503.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 510.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 513.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 515.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 512.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 509.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 502.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 491.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 524.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 526.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 523.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 530.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 533.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 535.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 532.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 529.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 522.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 542.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 545.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 547.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 544.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 541.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 553.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 555.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 552.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 559.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 562.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 564.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 561.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 558.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 551.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 540.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 521.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 490.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 133.00,"ts": 439.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 217.00,"ts": 356.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 579.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 581.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 578.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 585.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 588.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 590.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 587.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 584.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 577.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 597.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 600.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 602.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 599.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 596.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 608.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 610.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 607.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 614.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 617.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 619.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 616.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 613.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 606.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 595.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 576.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 629.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 632.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 634.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 631.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 628.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 640.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 642.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 639.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 646.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 649.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 651.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 648.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 645.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 638.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 627.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 660.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 662.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 659.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 666.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 669.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 671.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 668.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 665.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 658.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 678.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 681.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 683.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 680.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 677.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 689.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 691.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 688.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 695.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 698.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 700.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 697.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 694.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 687.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 676.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 657.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 626.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 133.00,"ts": 575.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 713.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 716.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 718.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 715.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 712.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 724.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 726.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 723.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 730.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 733.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 735.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 732.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 729.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 722.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 711.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 744.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 746.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 743.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 750.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 753.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 755.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 752.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 749.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 742.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 762.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 765.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 767.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 764.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 761.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 773.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 775.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 772.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 779.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 782.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 784.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 781.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 778.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 771.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 760.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 741.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 710.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 796.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 798.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 795.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 802.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 805.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 807.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 804.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 801.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 794.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 814.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 817.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 819.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 816.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 813.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 825.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 827.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 824.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 831.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 834.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 836.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 833.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 830.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 823.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 812.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 793.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 846.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 849.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 851.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 848.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 845.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 857.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 859.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 856.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 863.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 866.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 868.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 865.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 862.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 855.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 844.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 877.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 879.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 876.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 883.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 886.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 888.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 885.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 882.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 875.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 895.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 898.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 900.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 897.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 894.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 906.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 908.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 905.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 912.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 915.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 917.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 914.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 911.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 904.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 893.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 874.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 843.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 133.00,"ts": 792.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 217.00,"ts": 709.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 353.00,"ts": 574.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 573.00,"ts": 355.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 929.00,"ts": 0.00,"name":"fib","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 936.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 938.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 935.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 942.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 945.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 947.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 944.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 941.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 934.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 954.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 957.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 959.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 956.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 953.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 965.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 967.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 964.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 971.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 974.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 976.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 973.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 970.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 963.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 952.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 933.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 986.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 989.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 991.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 988.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 985.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 997.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 999.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 996.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1003.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1006.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1008.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1005.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1002.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 995.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 984.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1017.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1019.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1016.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1023.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1026.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1028.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1025.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1022.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1015.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1035.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1038.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1040.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1037.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1034.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1046.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1048.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1045.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1052.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1055.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1057.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1054.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1051.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1044.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1033.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 1014.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 983.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 133.00,"ts": 932.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1070.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1073.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1075.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1072.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1069.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1081.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1083.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1080.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1087.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1090.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1092.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1089.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1086.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1079.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1068.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1101.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1103.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1100.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1107.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1110.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1112.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1109.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1106.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1099.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1119.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1122.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1124.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1121.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1118.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1130.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1132.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1129.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1136.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1139.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1141.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1138.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1135.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1128.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1117.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 1098.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 1067.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1153.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1155.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1152.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1159.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1162.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1164.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1161.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1158.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1151.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1171.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1174.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1176.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1173.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1170.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1182.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1184.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1181.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1188.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1191.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1193.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1190.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1187.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1180.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1169.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 1150.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1203.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1206.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1208.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1205.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1202.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1214.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1216.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1213.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1220.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1223.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1225.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1222.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1219.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1212.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1201.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1234.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1236.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1233.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1240.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1243.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1245.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1242.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1239.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1232.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1252.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1255.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1257.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1254.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1251.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1263.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1265.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1262.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1269.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1272.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1274.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1271.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1268.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1261.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1250.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 1231.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 1200.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 133.00,"ts": 1149.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 217.00,"ts": 1066.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 353.00,"ts": 931.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1290.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1293.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1295.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1292.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1289.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1301.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1303.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1300.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1307.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1310.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1312.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1309.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1306.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1299.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1288.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1321.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1323.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1320.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1327.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1330.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1332.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1329.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1326.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1319.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1339.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1342.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1344.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1341.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1338.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1350.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1352.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1349.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1356.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1359.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1361.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1358.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1355.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1348.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1337.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 1318.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 1287.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1373.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1375.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1372.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1379.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1382.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1384.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1381.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1378.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1371.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1391.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1394.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1396.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1393.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1390.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1402.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1404.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1401.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1408.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1411.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1413.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1410.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1407.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1400.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1389.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 1370.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1423.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1426.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1428.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1425.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1422.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1434.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1436.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1433.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1440.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1443.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1445.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1442.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1439.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1432.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1421.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1454.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1456.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1453.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1460.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1463.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1465.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1462.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1459.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1452.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1472.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1475.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1477.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1474.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1471.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1483.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1485.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1482.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1489.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1492.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1494.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1491.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1488.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1481.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1470.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 1451.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 1420.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 133.00,"ts": 1369.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 217.00,"ts": 1286.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1509.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1511.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1508.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1515.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1518.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1520.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1517.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1514.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1507.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1527.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1530.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1532.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1529.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1526.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1538.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1540.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1537.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1544.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1547.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1549.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1546.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1543.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1536.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1525.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 1506.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1559.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1562.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1564.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1561.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1558.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1570.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1572.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1569.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1576.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1579.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1581.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1578.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1575.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1568.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1557.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1590.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1592.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1589.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1596.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1599.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1601.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1598.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1595.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1588.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1608.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1611.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1613.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1610.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1607.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1619.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1621.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1618.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1625.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1628.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1630.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1627.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1624.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1617.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1606.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 1587.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 1556.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 133.00,"ts": 1505.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1643.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1646.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1648.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1645.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1642.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1654.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1656.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1653.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1660.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1663.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1665.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1662.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1659.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1652.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1641.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1674.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1676.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1673.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1680.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1683.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1685.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1682.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1679.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1672.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1692.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1695.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1697.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1694.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1691.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1703.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1705.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1702.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1709.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1712.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1714.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1711.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1708.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1701.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1690.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 1671.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 1640.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1726.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1728.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1725.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1732.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1735.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1737.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1734.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1731.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1724.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1744.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1747.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1749.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1746.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1743.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1755.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1757.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1754.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1761.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1764.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1766.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1763.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1760.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1753.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1742.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 1723.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1776.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1779.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1781.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1778.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1775.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1787.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1789.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1786.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1793.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1796.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1798.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1795.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1792.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1785.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1774.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1807.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1809.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1806.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1813.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1816.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1818.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1815.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1812.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1805.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1825.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1828.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1830.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1827.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1824.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1836.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1838.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1835.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1842.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1845.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 1.00,"ts": 1847.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 5.00,"ts": 1844.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 9.00,"ts": 1841.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 17.00,"ts": 1834.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 29.00,"ts": 1823.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 49.00,"ts": 1804.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 81.00,"ts": 1773.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 133.00,"ts": 1722.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 217.00,"ts": 1639.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 353.00,"ts": 1504.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 573.00,"ts": 1285.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 3,"dur": 929.00,"ts": 930.00,"name":"Dune__exe__T2.fib2","ph":"X"}, +{"pid":2,"cat":"","tid": 1,"ts": 1860.00,"name":"tef-worker.exit","ph":"I"}] \ No newline at end of file diff --git a/test/t2.ml b/test/t2.ml new file mode 100644 index 0000000..1ad9de9 --- /dev/null +++ b/test/t2.ml @@ -0,0 +1,28 @@ +let ( let@ ) = ( @@ ) + +let rec fib x = + let%trace () = "fib" in + if x <= 2 then + 1 + else + fib (x - 1) + fib (x - 2) + +let%trace rec fib2 x = + if x <= 2 then + 1 + else + fib2 (x - 1) + fib2 (x - 2) + +let () = + Trace_tef.Internal_.mock_all_ (); + let@ () = Trace_tef.with_setup ~out:`Stdout () in + + Trace_core.set_process_name "main"; + Trace_core.set_thread_name "t1"; + + let x = fib 13 in + assert (x = 233); + + let x = fib2 13 in + assert (x = 233); + ()