import sys
import statistics

fname = sys.argv[1]

with open(fname, 'r') as f:
    data = f.readlines()

wait_times = []
memory_accesses = 0
last_exec_time = ''

for line in data:
    if 'got request from bus:' in line:
        memory_accesses += 1
    if 'request finished, waiting time' in line:
        wait_cycles = int(line.split(':')[-1])
        wait_times.append(wait_cycles)
    fields = line.split(' ')
    if len(fields) > 1 and fields[1] in ('ps:', 'ns:'):
        last_exec_time = line.split(':')[0]

print()

print(f"File: {fname}")
print(f"Number of memory accesses: {memory_accesses}")
#print(f"Average number of cycles waited for the bus: {statistics.mean(wait_times)}")
print(f"Total execution time: {last_exec_time}")

print()

end = False
for line in data:
    if end:
        print(line.strip())
    if line.startswith('Info'):
        end = True
