MSIHMO45JO5V5ICZ7SKVWH6CLINKQY3UTA7274Q5OZCKPRX7SUNQC
7X2VKCAMPOVATS4EJ2N2V6WGFMYPA5ZFWJQBMXQISYPNTBCUN3FAC
IWB3F4Z6QZYHQFJ6FWZTGWLCPBYEUTFLUS3F7QT7JOA4DV4YLYGAC
KBZHIGLGHGLST5AZZDEJTYBJSQNE2XYNHEN2FN6XMAMY5BJYZR6QC
62MQPRXCZCP7ZQKOOAFU5V36P7DBS6RCFDYK53PDCFGI4FAOQWMQC
24BMQDZAWDQ7VNIA7TIROXSOYLOJBNZ2E4264WHWNJAEN6ZB3UOAC
UQQ4IL55WHYMXNSPOXEFBTZAPMP7LQ726THOR7INRCJDSYVOP3ZAC
RYTQLATYOZ6ODIKYVJ63TC4OIQBXHSCV3NA2YD4NFP7443GQVSRQC
J5UVLXOK6EDIL5I7VKWH4V2QDS4DPD7FHRK6XBWSXFRQS4JKXFZQC
2GUAKGTBTNFFER343SQWSLFYIXXHJLDSGH5JHF7QMC3AVZB7Q3TQC
HN3V252LIH47SV655UM22DJUWEXVFAT265A7AGKLG6W73E3FE3ZAC
M6WGSGNMB53OI77MZKW4BRFFX3YNARSBKZI37RIOJY5FJKWIRTJAC
CAFO4ATEEGH75AMJ2CAE2FI6IUXAOY4TTJWIQHZFKKITUJGXXXTAC
R6B5CAFF3BWJPW6I5YGKXOKKCW6S7D7AHO2HLZVFUW3NL77ZW44QC
[% IF !isAggregate && build.finished %]
<tr>
<th>Duration:</th>
<td>[% actualBuild = build.iscachedbuild ? cachedBuild : build;
INCLUDE renderDuration duration = actualBuild.stoptime - actualBuild.starttime %];
finished at [% INCLUDE renderDateTime timestamp = actualBuild.stoptime %]</td>
</tr>
[% IF !isAggregate && build.finished; actualBuild = build.iscachedbuild ? cachedBuild : build %]
[% IF actualBuild %]
<tr>
<th>Duration:</th>
<td>[% INCLUDE renderDuration duration = actualBuild.stoptime - actualBuild.starttime %]</td>
</tr>
[% END %]
<tr>
<th>Finished at:</th>
<td>[% INCLUDE renderDateTime timestamp = build.stoptime; %]</td>
</tr>