Instructioons spec as argument instead of AbstractHelper::setSpec()/getSpec() + fixed loop cache