add loading guard
define an unite custom action lazily