Variants: conventional UI thread, conventional worker, ESM in UI thread, ESM worker