import json
import sys
from datetime import datetime

def elapsed(start, end):
    if not start or not end:
        return None, '開始または終了時刻がない'
    try:
        a, b = (datetime.fromisoformat(t.replace('Z', '+00:00'))
                for t in (start, end))
        if a.utcoffset() is None or b.utcoffset() is None:
            return None, 'タイムゾーンがない'
        seconds = (b - a).total_seconds()
        if seconds < 0:
            return None, '終了が開始より前'
        return round(seconds, 3), None
    except (ValueError, TypeError, AttributeError):
        return None, '日時形式が不正'

def extract(row):
    seconds, reason = elapsed(row.get('startedAt'), row.get('finishedAt'))
    return {
        'runId': row.get('id'),
        'status': row.get('status'),
        'elapsedSeconds': seconds,
        'elapsedUnknownReason': reason,
        'artifactReference': row.get('artifact'),
        'humanMinutes': None,
        'money': None,
        'unknownReason': '人の時間と料金はこの入力形式では収集していない'
    }

if __name__ == '__main__':
    print(json.dumps([extract(r) for r in json.load(sys.stdin)],
                     ensure_ascii=False, indent=2))
