Object-oriented approach - Eagle version