restructed classes and resources