#!/usr/bin/python3
import sys
import json
import os
from tapyr import Tapir

session = Tapir()

if len(sys.argv) == 1:
  counter = {}
  states = {}
  for pid in range(1, session.task_count() + 1):
    try:
      task_state = session.task(pid)
    except Exception as e:
      print("Error",  file = sys.stderr)
      task_state = session.task(pid)
    plugin_name = task_state["task"]["plugin_name"]
    try:
      counter[plugin_name] += 1
    except:
      counter[plugin_name] = 1
    state = task_state["state"]
    try:
      states[state] += 1
    except:
      states[state] = 0

  for name, count in counter.items():
    print(name, ":", count)
  print("")
  total = 0
  for state, count in states.items():
    total += count
    print(state, ":", count)
  print("total:", total)
