#!/usr/bin/python

import sys

# guard
if len(sys.argv) != 2:
  print "Syntax: "+sys.argv[0]+" conffile"
  sys.exit(1)

# vars
conffile = sys.argv[1]
conf_filename = ""
conf_skip     = 0
conf_cols     = [0]*0
conf_names    = [""]*0

# read config
def read_conf (file):
  global conf_filename, conf_skip
  fh = open(file, "r")
  lines = fh.readlines()
  for line in lines:
    line = line.rstrip() # remove trailing newline
    parts = line.split(":")
    if   parts[0] == "filnavn":
      conf_filename = parts[1].strip()
    elif parts[0] == "skip":
      conf_skip = int(parts[1].strip())
    elif parts[0] == "cols":
      conf_cols.extend(map(int,parts[1].split()))
    elif parts[0] == "navn":
      conf_names.append(parts[1].strip())
    else:
      print "Unknown key in conffile: "+parts[0]
      sys.exit(1)

# print config
def print_conf ():
  print "filnavn: "+conf_filename
  print "skip: "+str(conf_skip)
  print "cols: "+" ".join([str(i) for i in conf_cols])
  for name in conf_names:
    print "navn: "+name

# print out results
def read_data (file):
  fh = open(file, "r")
  lines = fh.readlines()
  lines = lines[conf_skip:len(lines)]
  for line in lines:
    line = line.strip()
    parts = line.split()
    if (parts[0] in conf_names):
      thesum = 0
      for i in conf_cols:
        thesum += int(parts[i])
      print parts[0]+" "+str(thesum)

# main
read_conf(conffile)
#print_conf() # for debug
read_data(conf_filename)
