function lift($x) { if(is_float ($x)) return new F($x); if(is_bool ($x)) return new B($x); if(is_int ($x)) return new I($x); if(is_o ($x)) return $x; if(is_object($x)) throw new Exception('cannot lift object'); if(is_array ($x)) throw new Exception('cannot lift array'); if(is_null ($x)) throw new Exception('cannot lift null'); }
function replace($a) { if(!(is_o($a) and $a->is_a('Array'))) throw new Exception($this->classname().' is not an Array'); $this->DATA = clone $a->native(); }