write problem;
↓
think about problem's answer;
↓
if problem's answer exist;
→exist;
↓
write answer;
→no exist;
↓
sleep;
↓
think problem's answer;
↓
if problem's answer exist;
→exist;
↓
write answer;
→no exist;
↓
send signal'001
signal'001 sent;
↓
sleep;
↓
think problem's answer;
↓
if problem's answer exist;
→exist;
↓
write answer;
→no exist;
↓
send signal'001;