minor changes
minor changes
class separation
structuring stuff