Moved to a more OOP aproach.