added separated classes