Term a1;
Predicate cont;
a1 = engine.aregs[1];
cont = engine.cont;
// system_predicate(read_with_variables(A,B,C)):-[]
a1 = a1.dereference();
if (a1.isStructure()){
if (! s164.equals(((StructureTerm)a1).functor()))
return engine.fail();
Term[] args = ((StructureTerm)a1).args();
} else if (a1.isVariable()){