public void set(T val) {
   Object fromRoot = _root.evaluate(Collections.singleton(null).iterator());
   getPropertyInfo().getAccessor().setValue(fromRoot, val);
 }
 @Override
 protected Object evaluate(Iterator args) {
   Object ctx = _root.evaluate(args);
   return _pi.getAccessor().getValue(ctx);
 }
 public T get() {
   Object fromRoot = _root.evaluate(Collections.singleton(null).iterator());
   return (T) getPropertyInfo().getAccessor().getValue(fromRoot);
 }