possibly make subroutines and functions literal (without [on])
use wildcard type for changed object in EffSync