lab02 was rewrited.