[
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "ensure-directory",
      "--mode",
      "0777",
      "[START_DIR]/tmp"
    ],
    "infra_step": true,
    "name": "makedirs tmp_dir"
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "copy",
      "[START_DIR]/skia/infra/bots/assets/lottie-samples/VERSION",
      "/path/to/tmp/"
    ],
    "infra_step": true,
    "name": "Get lottie-samples VERSION",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@VERSION@42@@@",
      "@@@STEP_LOG_END@VERSION@@@"
    ]
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "copy",
      "42",
      "[START_DIR]/tmp/LOTTIE_VERSION"
    ],
    "infra_step": true,
    "name": "write LOTTIE_VERSION",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@LOTTIE_VERSION@42@@@",
      "@@@STEP_LOG_END@LOTTIE_VERSION@@@"
    ]
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "rmtree",
      "[START_DIR]/[SWARM_OUT_DIR]"
    ],
    "infra_step": true,
    "name": "rmtree [SWARM_OUT_DIR]"
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "ensure-directory",
      "--mode",
      "0777",
      "[START_DIR]/[SWARM_OUT_DIR]"
    ],
    "infra_step": true,
    "name": "makedirs [SWARM_OUT_DIR]"
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "listdir",
      "[START_DIR]/lottie-samples"
    ],
    "infra_step": true,
    "name": "list lottie files",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@listdir@[START_DIR]/lottie-samples/LICENSE@@@",
      "@@@STEP_LOG_LINE@listdir@[START_DIR]/lottie-samples/lottie 3!.json@@@",
      "@@@STEP_LOG_LINE@listdir@[START_DIR]/lottie-samples/lottie(test)'!2.json@@@",
      "@@@STEP_LOG_LINE@listdir@[START_DIR]/lottie-samples/lottie1.json@@@",
      "@@@STEP_LOG_END@listdir@@@"
    ]
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[skia::flavor]/resources/symbolize_stack_trace.py",
      "[START_DIR]",
      "catchsegv",
      "[START_DIR]/build/dm",
      "--resourcePath",
      "[START_DIR]/skia/resources",
      "--lotties",
      "[START_DIR]/lottie-samples",
      "--src",
      "lottie",
      "--nonativeFonts",
      "--verbose",
      "--traceMatch",
      "skottie",
      "--trace",
      "[START_DIR]/[SWARM_OUT_DIR]/2.json",
      "--match",
      "^lottie 3!.json$",
      "--config",
      "8888",
      "--nogpu"
    ],
    "cwd": "[START_DIR]/skia",
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "name": "symbolized dm"
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "copy",
      "[START_DIR]/[SWARM_OUT_DIR]/2.json",
      "/path/to/tmp/"
    ],
    "infra_step": true,
    "name": "read [START_DIR]/[SWARM_OUT_DIR]/2.json",
    "~followup_annotations": [
      "@@@STEP_LOG_END@2.json@@@"
    ]
  },
  {
    "cmd": [
      "python",
      "-u",
      "\nimport json\nimport sys\n\ntrace_output = sys.argv[1]\ntrace_json = json.loads(trace_output)\nlottie_filename = sys.argv[2]\noutput_json_file = sys.argv[3]\n\nperf_results = {}\nframe_max = 0\nframe_min = 0\nframe_cumulative = 0\ncurrent_frame_duration = 0\ntotal_frames = 0\nframe_start = False\nskipped_first_seek = False  # Skip the first seek constructor call.\nfor trace in trace_json:\n  if 'skottie::Animation::seek' in trace['name']:\n    if not skipped_first_seek:\n      skipped_first_seek = True\n      continue\n    if frame_start:\n      raise Exception('We got consecutive Animation::seek without a ' +\n                      'render. Something is wrong.')\n    frame_start = True\n    current_frame_duration = trace['dur']\n  elif 'skottie::Animation::render' in trace['name']:\n    if not frame_start:\n      raise Exception('We got an Animation::render without a seek first. ' +\n                      'Something is wrong.')\n\n    current_frame_duration += trace['dur']\n    frame_start = False\n    total_frames += 1\n    frame_max = max(frame_max, current_frame_duration)\n    frame_min = (min(frame_min, current_frame_duration)\n                 if frame_min else current_frame_duration)\n    frame_cumulative += current_frame_duration\n\nexpected_dm_frames = 25\nif total_frames != expected_dm_frames:\n  raise Exception(\n      'Got ' + str(total_frames) + ' frames instead of ' +\n      str(expected_dm_frames))\nperf_results['frame_max_us'] = frame_max\nperf_results['frame_min_us'] = frame_min\nperf_results['frame_avg_us'] = frame_cumulative/total_frames\n\n# Write perf_results to the output json.\nwith open(output_json_file, 'w') as f:\n  f.write(json.dumps(perf_results))\n",
      "\n[{\"ph\":\"X\",\"name\":\"void skottie::Animation::seek(SkScalar)\",\"ts\":452,\"dur\":2.57,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void SkCanvas::drawPaint(const SkPaint &)\",\"ts\":473,\"dur\":2.67e+03,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void skottie::Animation::seek(SkScalar)\",\"ts\":3.15e+03,\"dur\":2.25,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void skottie::Animation::render(SkCanvas *, const SkRect *, RenderFlags) const\",\"ts\":3.15e+03,\"dur\":216,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void SkCanvas::drawPath(const SkPath &, const SkPaint &)\",\"ts\":3.35e+03,\"dur\":15.1,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void skottie::Animation::seek(SkScalar)\",\"ts\":3.37e+03,\"dur\":1.17,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void skottie::Animation::render(SkCanvas *, const SkRect *, RenderFlags) const\",\"ts\":3.37e+03,\"dur\":140,\"tid\":1,\"pid\":0}]\n",
      "lottie 3!.json",
      "/path/to/tmp/json"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "name": "parse lottie 3!.json trace",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@json.output@{@@@",
      "@@@STEP_LOG_LINE@json.output@  \"frame_avg_us\": 179.71, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"frame_max_us\": 218.25, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"frame_min_us\": 141.17@@@",
      "@@@STEP_LOG_LINE@json.output@}@@@",
      "@@@STEP_LOG_END@json.output@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@import json@@@",
      "@@@STEP_LOG_LINE@python.inline@import sys@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@trace_output = sys.argv[1]@@@",
      "@@@STEP_LOG_LINE@python.inline@trace_json = json.loads(trace_output)@@@",
      "@@@STEP_LOG_LINE@python.inline@lottie_filename = sys.argv[2]@@@",
      "@@@STEP_LOG_LINE@python.inline@output_json_file = sys.argv[3]@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@perf_results = {}@@@",
      "@@@STEP_LOG_LINE@python.inline@frame_max = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@frame_min = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@frame_cumulative = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@current_frame_duration = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@total_frames = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@frame_start = False@@@",
      "@@@STEP_LOG_LINE@python.inline@skipped_first_seek = False  # Skip the first seek constructor call.@@@",
      "@@@STEP_LOG_LINE@python.inline@for trace in trace_json:@@@",
      "@@@STEP_LOG_LINE@python.inline@  if 'skottie::Animation::seek' in trace['name']:@@@",
      "@@@STEP_LOG_LINE@python.inline@    if not skipped_first_seek:@@@",
      "@@@STEP_LOG_LINE@python.inline@      skipped_first_seek = True@@@",
      "@@@STEP_LOG_LINE@python.inline@      continue@@@",
      "@@@STEP_LOG_LINE@python.inline@    if frame_start:@@@",
      "@@@STEP_LOG_LINE@python.inline@      raise Exception('We got consecutive Animation::seek without a ' +@@@",
      "@@@STEP_LOG_LINE@python.inline@                      'render. Something is wrong.')@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_start = True@@@",
      "@@@STEP_LOG_LINE@python.inline@    current_frame_duration = trace['dur']@@@",
      "@@@STEP_LOG_LINE@python.inline@  elif 'skottie::Animation::render' in trace['name']:@@@",
      "@@@STEP_LOG_LINE@python.inline@    if not frame_start:@@@",
      "@@@STEP_LOG_LINE@python.inline@      raise Exception('We got an Animation::render without a seek first. ' +@@@",
      "@@@STEP_LOG_LINE@python.inline@                      'Something is wrong.')@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@    current_frame_duration += trace['dur']@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_start = False@@@",
      "@@@STEP_LOG_LINE@python.inline@    total_frames += 1@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_max = max(frame_max, current_frame_duration)@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_min = (min(frame_min, current_frame_duration)@@@",
      "@@@STEP_LOG_LINE@python.inline@                 if frame_min else current_frame_duration)@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_cumulative += current_frame_duration@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@expected_dm_frames = 25@@@",
      "@@@STEP_LOG_LINE@python.inline@if total_frames != expected_dm_frames:@@@",
      "@@@STEP_LOG_LINE@python.inline@  raise Exception(@@@",
      "@@@STEP_LOG_LINE@python.inline@      'Got ' + str(total_frames) + ' frames instead of ' +@@@",
      "@@@STEP_LOG_LINE@python.inline@      str(expected_dm_frames))@@@",
      "@@@STEP_LOG_LINE@python.inline@perf_results['frame_max_us'] = frame_max@@@",
      "@@@STEP_LOG_LINE@python.inline@perf_results['frame_min_us'] = frame_min@@@",
      "@@@STEP_LOG_LINE@python.inline@perf_results['frame_avg_us'] = frame_cumulative/total_frames@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@# Write perf_results to the output json.@@@",
      "@@@STEP_LOG_LINE@python.inline@with open(output_json_file, 'w') as f:@@@",
      "@@@STEP_LOG_LINE@python.inline@  f.write(json.dumps(perf_results))@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "remove",
      "[START_DIR]/[SWARM_OUT_DIR]/2.json"
    ],
    "infra_step": true,
    "name": "remove [START_DIR]/[SWARM_OUT_DIR]/2.json"
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[skia::flavor]/resources/symbolize_stack_trace.py",
      "[START_DIR]",
      "catchsegv",
      "[START_DIR]/build/dm",
      "--resourcePath",
      "[START_DIR]/skia/resources",
      "--lotties",
      "[START_DIR]/lottie-samples",
      "--src",
      "lottie",
      "--nonativeFonts",
      "--verbose",
      "--traceMatch",
      "skottie",
      "--trace",
      "[START_DIR]/[SWARM_OUT_DIR]/3.json",
      "--match",
      "^lottie(test)'!2.json$",
      "--config",
      "8888",
      "--nogpu"
    ],
    "cwd": "[START_DIR]/skia",
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "name": "symbolized dm (2)"
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "copy",
      "[START_DIR]/[SWARM_OUT_DIR]/3.json",
      "/path/to/tmp/"
    ],
    "infra_step": true,
    "name": "read [START_DIR]/[SWARM_OUT_DIR]/3.json",
    "~followup_annotations": [
      "@@@STEP_LOG_END@3.json@@@"
    ]
  },
  {
    "cmd": [
      "python",
      "-u",
      "\nimport json\nimport sys\n\ntrace_output = sys.argv[1]\ntrace_json = json.loads(trace_output)\nlottie_filename = sys.argv[2]\noutput_json_file = sys.argv[3]\n\nperf_results = {}\nframe_max = 0\nframe_min = 0\nframe_cumulative = 0\ncurrent_frame_duration = 0\ntotal_frames = 0\nframe_start = False\nskipped_first_seek = False  # Skip the first seek constructor call.\nfor trace in trace_json:\n  if 'skottie::Animation::seek' in trace['name']:\n    if not skipped_first_seek:\n      skipped_first_seek = True\n      continue\n    if frame_start:\n      raise Exception('We got consecutive Animation::seek without a ' +\n                      'render. Something is wrong.')\n    frame_start = True\n    current_frame_duration = trace['dur']\n  elif 'skottie::Animation::render' in trace['name']:\n    if not frame_start:\n      raise Exception('We got an Animation::render without a seek first. ' +\n                      'Something is wrong.')\n\n    current_frame_duration += trace['dur']\n    frame_start = False\n    total_frames += 1\n    frame_max = max(frame_max, current_frame_duration)\n    frame_min = (min(frame_min, current_frame_duration)\n                 if frame_min else current_frame_duration)\n    frame_cumulative += current_frame_duration\n\nexpected_dm_frames = 25\nif total_frames != expected_dm_frames:\n  raise Exception(\n      'Got ' + str(total_frames) + ' frames instead of ' +\n      str(expected_dm_frames))\nperf_results['frame_max_us'] = frame_max\nperf_results['frame_min_us'] = frame_min\nperf_results['frame_avg_us'] = frame_cumulative/total_frames\n\n# Write perf_results to the output json.\nwith open(output_json_file, 'w') as f:\n  f.write(json.dumps(perf_results))\n",
      "\n[{\"ph\":\"X\",\"name\":\"void skottie::Animation::seek(SkScalar)\",\"ts\":452,\"dur\":2.57,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void SkCanvas::drawPaint(const SkPaint &)\",\"ts\":473,\"dur\":2.67e+03,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void skottie::Animation::seek(SkScalar)\",\"ts\":3.15e+03,\"dur\":2.25,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void skottie::Animation::render(SkCanvas *, const SkRect *, RenderFlags) const\",\"ts\":3.15e+03,\"dur\":216,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void SkCanvas::drawPath(const SkPath &, const SkPaint &)\",\"ts\":3.35e+03,\"dur\":15.1,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void skottie::Animation::seek(SkScalar)\",\"ts\":3.37e+03,\"dur\":1.17,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void skottie::Animation::render(SkCanvas *, const SkRect *, RenderFlags) const\",\"ts\":3.37e+03,\"dur\":140,\"tid\":1,\"pid\":0}]\n",
      "lottie(test)'!2.json",
      "/path/to/tmp/json"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "name": "parse lottie(test)'!2.json trace",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@json.output@{@@@",
      "@@@STEP_LOG_LINE@json.output@  \"frame_avg_us\": 179.71, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"frame_max_us\": 218.25, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"frame_min_us\": 141.17@@@",
      "@@@STEP_LOG_LINE@json.output@}@@@",
      "@@@STEP_LOG_END@json.output@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@import json@@@",
      "@@@STEP_LOG_LINE@python.inline@import sys@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@trace_output = sys.argv[1]@@@",
      "@@@STEP_LOG_LINE@python.inline@trace_json = json.loads(trace_output)@@@",
      "@@@STEP_LOG_LINE@python.inline@lottie_filename = sys.argv[2]@@@",
      "@@@STEP_LOG_LINE@python.inline@output_json_file = sys.argv[3]@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@perf_results = {}@@@",
      "@@@STEP_LOG_LINE@python.inline@frame_max = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@frame_min = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@frame_cumulative = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@current_frame_duration = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@total_frames = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@frame_start = False@@@",
      "@@@STEP_LOG_LINE@python.inline@skipped_first_seek = False  # Skip the first seek constructor call.@@@",
      "@@@STEP_LOG_LINE@python.inline@for trace in trace_json:@@@",
      "@@@STEP_LOG_LINE@python.inline@  if 'skottie::Animation::seek' in trace['name']:@@@",
      "@@@STEP_LOG_LINE@python.inline@    if not skipped_first_seek:@@@",
      "@@@STEP_LOG_LINE@python.inline@      skipped_first_seek = True@@@",
      "@@@STEP_LOG_LINE@python.inline@      continue@@@",
      "@@@STEP_LOG_LINE@python.inline@    if frame_start:@@@",
      "@@@STEP_LOG_LINE@python.inline@      raise Exception('We got consecutive Animation::seek without a ' +@@@",
      "@@@STEP_LOG_LINE@python.inline@                      'render. Something is wrong.')@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_start = True@@@",
      "@@@STEP_LOG_LINE@python.inline@    current_frame_duration = trace['dur']@@@",
      "@@@STEP_LOG_LINE@python.inline@  elif 'skottie::Animation::render' in trace['name']:@@@",
      "@@@STEP_LOG_LINE@python.inline@    if not frame_start:@@@",
      "@@@STEP_LOG_LINE@python.inline@      raise Exception('We got an Animation::render without a seek first. ' +@@@",
      "@@@STEP_LOG_LINE@python.inline@                      'Something is wrong.')@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@    current_frame_duration += trace['dur']@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_start = False@@@",
      "@@@STEP_LOG_LINE@python.inline@    total_frames += 1@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_max = max(frame_max, current_frame_duration)@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_min = (min(frame_min, current_frame_duration)@@@",
      "@@@STEP_LOG_LINE@python.inline@                 if frame_min else current_frame_duration)@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_cumulative += current_frame_duration@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@expected_dm_frames = 25@@@",
      "@@@STEP_LOG_LINE@python.inline@if total_frames != expected_dm_frames:@@@",
      "@@@STEP_LOG_LINE@python.inline@  raise Exception(@@@",
      "@@@STEP_LOG_LINE@python.inline@      'Got ' + str(total_frames) + ' frames instead of ' +@@@",
      "@@@STEP_LOG_LINE@python.inline@      str(expected_dm_frames))@@@",
      "@@@STEP_LOG_LINE@python.inline@perf_results['frame_max_us'] = frame_max@@@",
      "@@@STEP_LOG_LINE@python.inline@perf_results['frame_min_us'] = frame_min@@@",
      "@@@STEP_LOG_LINE@python.inline@perf_results['frame_avg_us'] = frame_cumulative/total_frames@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@# Write perf_results to the output json.@@@",
      "@@@STEP_LOG_LINE@python.inline@with open(output_json_file, 'w') as f:@@@",
      "@@@STEP_LOG_LINE@python.inline@  f.write(json.dumps(perf_results))@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "remove",
      "[START_DIR]/[SWARM_OUT_DIR]/3.json"
    ],
    "infra_step": true,
    "name": "remove [START_DIR]/[SWARM_OUT_DIR]/3.json"
  },
  {
    "cmd": [
      "python",
      "-u",
      "RECIPE_MODULE[skia::flavor]/resources/symbolize_stack_trace.py",
      "[START_DIR]",
      "catchsegv",
      "[START_DIR]/build/dm",
      "--resourcePath",
      "[START_DIR]/skia/resources",
      "--lotties",
      "[START_DIR]/lottie-samples",
      "--src",
      "lottie",
      "--nonativeFonts",
      "--verbose",
      "--traceMatch",
      "skottie",
      "--trace",
      "[START_DIR]/[SWARM_OUT_DIR]/4.json",
      "--match",
      "^lottie1.json$",
      "--config",
      "8888",
      "--nogpu"
    ],
    "cwd": "[START_DIR]/skia",
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "name": "symbolized dm (3)"
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "copy",
      "[START_DIR]/[SWARM_OUT_DIR]/4.json",
      "/path/to/tmp/"
    ],
    "infra_step": true,
    "name": "read [START_DIR]/[SWARM_OUT_DIR]/4.json",
    "~followup_annotations": [
      "@@@STEP_LOG_END@4.json@@@"
    ]
  },
  {
    "cmd": [
      "python",
      "-u",
      "\nimport json\nimport sys\n\ntrace_output = sys.argv[1]\ntrace_json = json.loads(trace_output)\nlottie_filename = sys.argv[2]\noutput_json_file = sys.argv[3]\n\nperf_results = {}\nframe_max = 0\nframe_min = 0\nframe_cumulative = 0\ncurrent_frame_duration = 0\ntotal_frames = 0\nframe_start = False\nskipped_first_seek = False  # Skip the first seek constructor call.\nfor trace in trace_json:\n  if 'skottie::Animation::seek' in trace['name']:\n    if not skipped_first_seek:\n      skipped_first_seek = True\n      continue\n    if frame_start:\n      raise Exception('We got consecutive Animation::seek without a ' +\n                      'render. Something is wrong.')\n    frame_start = True\n    current_frame_duration = trace['dur']\n  elif 'skottie::Animation::render' in trace['name']:\n    if not frame_start:\n      raise Exception('We got an Animation::render without a seek first. ' +\n                      'Something is wrong.')\n\n    current_frame_duration += trace['dur']\n    frame_start = False\n    total_frames += 1\n    frame_max = max(frame_max, current_frame_duration)\n    frame_min = (min(frame_min, current_frame_duration)\n                 if frame_min else current_frame_duration)\n    frame_cumulative += current_frame_duration\n\nexpected_dm_frames = 25\nif total_frames != expected_dm_frames:\n  raise Exception(\n      'Got ' + str(total_frames) + ' frames instead of ' +\n      str(expected_dm_frames))\nperf_results['frame_max_us'] = frame_max\nperf_results['frame_min_us'] = frame_min\nperf_results['frame_avg_us'] = frame_cumulative/total_frames\n\n# Write perf_results to the output json.\nwith open(output_json_file, 'w') as f:\n  f.write(json.dumps(perf_results))\n",
      "\n[{\"ph\":\"X\",\"name\":\"void skottie::Animation::seek(SkScalar)\",\"ts\":452,\"dur\":2.57,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void SkCanvas::drawPaint(const SkPaint &)\",\"ts\":473,\"dur\":2.67e+03,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void skottie::Animation::seek(SkScalar)\",\"ts\":3.15e+03,\"dur\":2.25,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void skottie::Animation::render(SkCanvas *, const SkRect *, RenderFlags) const\",\"ts\":3.15e+03,\"dur\":216,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void SkCanvas::drawPath(const SkPath &, const SkPaint &)\",\"ts\":3.35e+03,\"dur\":15.1,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void skottie::Animation::seek(SkScalar)\",\"ts\":3.37e+03,\"dur\":1.17,\"tid\":1,\"pid\":0},{\"ph\":\"X\",\"name\":\"void skottie::Animation::render(SkCanvas *, const SkRect *, RenderFlags) const\",\"ts\":3.37e+03,\"dur\":140,\"tid\":1,\"pid\":0}]\n",
      "lottie1.json",
      "/path/to/tmp/json"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "name": "parse lottie1.json trace",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@json.output@{@@@",
      "@@@STEP_LOG_LINE@json.output@  \"frame_avg_us\": 179.71, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"frame_max_us\": 218.25, @@@",
      "@@@STEP_LOG_LINE@json.output@  \"frame_min_us\": 141.17@@@",
      "@@@STEP_LOG_LINE@json.output@}@@@",
      "@@@STEP_LOG_END@json.output@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@import json@@@",
      "@@@STEP_LOG_LINE@python.inline@import sys@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@trace_output = sys.argv[1]@@@",
      "@@@STEP_LOG_LINE@python.inline@trace_json = json.loads(trace_output)@@@",
      "@@@STEP_LOG_LINE@python.inline@lottie_filename = sys.argv[2]@@@",
      "@@@STEP_LOG_LINE@python.inline@output_json_file = sys.argv[3]@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@perf_results = {}@@@",
      "@@@STEP_LOG_LINE@python.inline@frame_max = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@frame_min = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@frame_cumulative = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@current_frame_duration = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@total_frames = 0@@@",
      "@@@STEP_LOG_LINE@python.inline@frame_start = False@@@",
      "@@@STEP_LOG_LINE@python.inline@skipped_first_seek = False  # Skip the first seek constructor call.@@@",
      "@@@STEP_LOG_LINE@python.inline@for trace in trace_json:@@@",
      "@@@STEP_LOG_LINE@python.inline@  if 'skottie::Animation::seek' in trace['name']:@@@",
      "@@@STEP_LOG_LINE@python.inline@    if not skipped_first_seek:@@@",
      "@@@STEP_LOG_LINE@python.inline@      skipped_first_seek = True@@@",
      "@@@STEP_LOG_LINE@python.inline@      continue@@@",
      "@@@STEP_LOG_LINE@python.inline@    if frame_start:@@@",
      "@@@STEP_LOG_LINE@python.inline@      raise Exception('We got consecutive Animation::seek without a ' +@@@",
      "@@@STEP_LOG_LINE@python.inline@                      'render. Something is wrong.')@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_start = True@@@",
      "@@@STEP_LOG_LINE@python.inline@    current_frame_duration = trace['dur']@@@",
      "@@@STEP_LOG_LINE@python.inline@  elif 'skottie::Animation::render' in trace['name']:@@@",
      "@@@STEP_LOG_LINE@python.inline@    if not frame_start:@@@",
      "@@@STEP_LOG_LINE@python.inline@      raise Exception('We got an Animation::render without a seek first. ' +@@@",
      "@@@STEP_LOG_LINE@python.inline@                      'Something is wrong.')@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@    current_frame_duration += trace['dur']@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_start = False@@@",
      "@@@STEP_LOG_LINE@python.inline@    total_frames += 1@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_max = max(frame_max, current_frame_duration)@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_min = (min(frame_min, current_frame_duration)@@@",
      "@@@STEP_LOG_LINE@python.inline@                 if frame_min else current_frame_duration)@@@",
      "@@@STEP_LOG_LINE@python.inline@    frame_cumulative += current_frame_duration@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@expected_dm_frames = 25@@@",
      "@@@STEP_LOG_LINE@python.inline@if total_frames != expected_dm_frames:@@@",
      "@@@STEP_LOG_LINE@python.inline@  raise Exception(@@@",
      "@@@STEP_LOG_LINE@python.inline@      'Got ' + str(total_frames) + ' frames instead of ' +@@@",
      "@@@STEP_LOG_LINE@python.inline@      str(expected_dm_frames))@@@",
      "@@@STEP_LOG_LINE@python.inline@perf_results['frame_max_us'] = frame_max@@@",
      "@@@STEP_LOG_LINE@python.inline@perf_results['frame_min_us'] = frame_min@@@",
      "@@@STEP_LOG_LINE@python.inline@perf_results['frame_avg_us'] = frame_cumulative/total_frames@@@",
      "@@@STEP_LOG_LINE@python.inline@@@@",
      "@@@STEP_LOG_LINE@python.inline@# Write perf_results to the output json.@@@",
      "@@@STEP_LOG_LINE@python.inline@with open(output_json_file, 'w') as f:@@@",
      "@@@STEP_LOG_LINE@python.inline@  f.write(json.dumps(perf_results))@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "remove",
      "[START_DIR]/[SWARM_OUT_DIR]/4.json"
    ],
    "infra_step": true,
    "name": "remove [START_DIR]/[SWARM_OUT_DIR]/4.json"
  },
  {
    "cmd": [
      "python",
      "-u",
      "import os\nprint os.environ.get('SWARMING_BOT_ID', '')\n"
    ],
    "name": "get swarming bot id",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@python.inline@import os@@@",
      "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_BOT_ID', '')@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "cmd": [
      "python",
      "-u",
      "import os\nprint os.environ.get('SWARMING_TASK_ID', '')\n"
    ],
    "name": "get swarming task id",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@python.inline@import os@@@",
      "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_TASK_ID', '')@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "cmd": [
      "vpython",
      "-u",
      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
      "--json-output",
      "/path/to/tmp/json",
      "ensure-directory",
      "--mode",
      "0777",
      "[START_DIR]/[SWARM_OUT_DIR]"
    ],
    "infra_step": true,
    "name": "makedirs perf_dir"
  },
  {
    "cmd": [
      "python",
      "-u",
      "import json\nwith open('[START_DIR]/[SWARM_OUT_DIR]/perf_abc123_1337000001.json', 'w') as outfile:\n  json.dump(obj={'gitHash': 'abc123', 'results': {\"lottie(test)'!2.json\": {'gles': {'frame_avg_us': 179.71, 'frame_max_us': 218.25, 'frame_min_us': 141.17}}, 'lottie1.json': {'gles': {'frame_avg_us': 179.71, 'frame_max_us': 218.25, 'frame_min_us': 141.17}}, 'lottie 3!.json': {'gles': {'frame_avg_us': 179.71, 'frame_max_us': 218.25, 'frame_min_us': 141.17}}}, 'swarming_task_id': '', 'renderer': 'skottie', 'key': {'extra_config': 'SkottieTracing', 'bench_type': 'tracing', 'cpu_or_gpu_value': 'AVX2', 'arch': 'x86_64', 'source_type': 'skottie', 'cpu_or_gpu': 'CPU', 'model': 'GCE', 'configuration': 'Release', 'os': 'Debian9', 'compiler': 'Clang'}, 'swarming_bot_id': ''}, fp=outfile, indent=4)\n"
    ],
    "env": {
      "CHROME_HEADLESS": "1",
      "PATH": "<PATH>:RECIPE_REPO[depot_tools]"
    },
    "name": "write output JSON",
    "~followup_annotations": [
      "@@@STEP_LOG_LINE@python.inline@import json@@@",
      "@@@STEP_LOG_LINE@python.inline@with open('[START_DIR]/[SWARM_OUT_DIR]/perf_abc123_1337000001.json', 'w') as outfile:@@@",
      "@@@STEP_LOG_LINE@python.inline@  json.dump(obj={'gitHash': 'abc123', 'results': {\"lottie(test)'!2.json\": {'gles': {'frame_avg_us': 179.71, 'frame_max_us': 218.25, 'frame_min_us': 141.17}}, 'lottie1.json': {'gles': {'frame_avg_us': 179.71, 'frame_max_us': 218.25, 'frame_min_us': 141.17}}, 'lottie 3!.json': {'gles': {'frame_avg_us': 179.71, 'frame_max_us': 218.25, 'frame_min_us': 141.17}}}, 'swarming_task_id': '', 'renderer': 'skottie', 'key': {'extra_config': 'SkottieTracing', 'bench_type': 'tracing', 'cpu_or_gpu_value': 'AVX2', 'arch': 'x86_64', 'source_type': 'skottie', 'cpu_or_gpu': 'CPU', 'model': 'GCE', 'configuration': 'Release', 'os': 'Debian9', 'compiler': 'Clang'}, 'swarming_bot_id': ''}, fp=outfile, indent=4)@@@",
      "@@@STEP_LOG_END@python.inline@@@"
    ]
  },
  {
    "name": "$result"
  }
]