detailed demonstration