LISKOV SUBSTITUTION PRINCIPLE | SOLID PRINCIPLES | LOW LEVEL DESIGN