func init // adds using namespace sys.add_use('System.Numerics') // initialize instance number = this.props('Value').value sys.add_object(this.codename, 'BigInteger', code(replace(number, "\\r\\n", ""))) // makes implementation methods for properties sys._prop_init('IsEven', 1, 0, 104) sys._prop_init('IsOne', 1, 0, 104) sys._prop_init('IsPowerOfTwo', 1, 0, 104) sys._prop_init('IsZero', 1, 0, 104) sys._prop_init('MinusOne', 1, 0, 0, 'BigInteger') sys._prop_init('One', 1, 0, 0, 'BigInteger') sys._prop_init('Sign', 1, 0, 1) sys._prop_init('Zero', 1, 0, 0, 'BigInteger') // makes implementation of methods as properties sys._mtd_as_prop_init('GetHashCode()') sys._mtd_as_prop_init('ToByteArray()') sys._mtd_as_prop_init('ToString()') sys._mtd_as_prop_init('BigInteger') end func doConstructor(value) blk.println(this.codename, ' = new BigInteger(', d("Value"), ');') end func doValue(value) blk.println(this.codename, ' = ', d("Value"), ';') end func doEquals(data) event("onEquals", this.codename + '.Equals(' + d("data") + ')') end