if (name.equals("seq/Int")) return ExprUnary.Op.NOOP.make(pos, SEQIDX);
if (name.equals("String")) return ExprUnary.Op.NOOP.make(pos, STRING);
if (name.equals("none")) return ExprUnary.Op.NOOP.make(pos, NONE);
if (name.equals("iden")) return ExprConstant.Op.IDEN.make(pos, 0);
if (name.equals("sig$") || name.equals("field$")) if (world!=null) {
Sig s = world.sigs.get(name);
if (s!=null) return ExprUnary.Op.NOOP.make(pos, s);
}
final List<Object> ans = name.indexOf('/')>=0 ? getRawQS(fun?5:1, name) : getRawNQS(this, fun?5:1, name);
final Sig param = params.get(name); if (param!=null && !ans.contains(param)) ans.add(param);
for(Object x: ans) {
if (x instanceof Sig) {
Sig y = (Sig)x;
ch.add(ExprUnary.Op.NOOP.make(pos, y, null, 0));
re.add("sig "+y.label);
}
else if (x instanceof Func) {
Func f = (Func)x;