Rewriten 3 classes