+ else if(!s.compare(0, 11, "wait until "))
+ {
+ string::size_type mod = s.find(" mod ", 11);
+ unsigned nondigit = (mod!=string::npos ? mod+5 : 11);
+ while(nondigit<s.size() && isdigit(s[nondigit]))
+ ++nondigit;
+ if(mod!=string::npos)
+ {
+ unsigned time = lexical_cast<unsigned>(s.substr(11, mod-11));
+ Row row(WAIT_UNTIL, time);
+ row.params.push_back(lexical_cast<unsigned>(s.substr(mod+5, nondigit-mod-5)));
+ return row;
+ }
+ else
+ {
+ unsigned time = lexical_cast<unsigned>(s.substr(11, nondigit-11));
+ Row row(WAIT_UNTIL, time);
+ row.params.push_back(3600);
+ return row;
+ }
+ }