move apply_to out of run_context
move value out of run context
use ErrorComponent directly