{
if (node.getFor() != null && onceForExp.get(node) == null)
{
Double expireTime = ((DoubleValue) node.getFor().apply(expEval)).value
+ ((DoubleValue) new ASystemTimeSingleExp().apply(expEval)).value;
onceForExp.put(node, new ABinaryExp(new ASystemTimeSingleExp(), new ALessEqualBinop(), new ANumericalSingleExp(expireTime)));
}
for (PStm stm : node.getThen())
{
stm.apply(this);
}