- return 1 if m,^/pb/$word, && problem_private $1;
- return 1 if m,^/log/(?:job|src)/$word, && job_private $1;
- return 1 if m,^/ct/$word/(?:pb|log), && time < contest_start $1;
- return 1 if m,^/ct/$word/log/src, && time < contest_end $1;
- 0
+ return $db->problem($1)->owner if m,^/pb/$word, && $db->problem($1)->private;
+ return $db->job ($1)->owner if m,^/log/(?:job|src)/$word, && $db->job($1)->private;
+ return $db->contest($1)->owner if m,^/ct/$word/(?:pb|log), && time < $db->contest($1)->start;
+ return $db->job ($2)->owner if m,^/ct/$word/log/(?:job|src)/$word, && time < $db->contest($1)->stop;
+ ''