Design ATM System
Design an automated teller machine
Overview
Design an ATM (Automated Teller Machine) system that handles basic banking operations like withdrawal, balance inquiry, deposit.
Key Concepts
State Pattern: ATM states (HasCard, Authentic, Dispensing, Error)
Chain of Responsibility: Money dispenser for different denominations