# 4.2 比赛里程碑

`contest` 表为每场比赛中的里程碑打上时间戳。

三元组 `<activetime，starttime，endtime>` 是必须的，他们定义了比赛的开始结束时间（`activetime` 和 `starttime` 可以相等）。

`activetime` 是比赛对公众和选手可见的时间。此时不允许提交，题目也不可见。`clarification` 可以编写或答复。

在 `starttime` ，得分榜公开并且接受提交。在 `endtime` 比赛结束。新到来的提交仍然会被处理并运行，但是结果不会对队伍公布；队伍会收到“`too-late`”的裁决。`endtime` 之前收到的未被处理的提交仍然会被正常评测。

`freezetime` 和 `unfreezetime` 控制着封榜。`freezetime` 时，得分榜将不再更新，以此使得比赛的最后阶段更加 excited!，因为没有人知道谁赢了。若该列为空则不启用该功能。当使用 `unfreezetime` 时，系统将在时间到后自动解封榜单。详情参见 6.2.3。

得分榜，结果和 `clarification` 将继续对队伍和观众可见，直到 `deactivetime` 。

所有事件将在定义的时刻的第一时间发生。也就是说，如果一场比赛将在12:00开始，在17：00结束，那么系统将在12:00:00接受第一个提交，在16:59:59接受最后一个提交。

以下顺序必须严格遵守：`activatetime` <= `starttime` < (`freezetime` <=) `endtime` (<= `unfreezetime`) (<= `deactivatime`)。
