directives aren't generic enough but work without one billion requests per keypress.