def reply_to_parent(workitem)
h.applied_workitem['fields'] = workitem['fields']
key, value = if var_key = has_attribute(:v, :var, :variable)
var = attribute(var_key)
[ "v:#{var}", new_value(:var, var, nil) ]
elsif field_key = has_attribute(:f, :fld, :field)
field = attribute(field_key)
[ field, new_value(:field, field, nil) ]
elsif k = att_text
[ k, new_value(nil, k, nil) ]
elsif kv = find_kv
k, v = kv
[ k, new_value(nil, k, v) ]
else
raise(ArgumentError.new('no variable or field to increment/decrement'))
end
h.variables = nil
if dec? && value.is_a?(Array)
k, car, value = value
set_vf(k || '__result__', car)
end
set_vf(key, value)
super(h.applied_workitem)
end