improved demo