rewrite person class