-Surface class
-Plain class
refactoring