New OOP structure, neat&clean.