} else if (object instanceof Short) {
returnValue = new ShortToken(((Short) object).shortValue());
} else if (object instanceof Integer) {
returnValue = new IntToken(((Integer) object).intValue());
} else if (object instanceof Long) {
returnValue = new LongToken(((Long) object).longValue());
} else if (object instanceof Double) {
returnValue = new DoubleToken(((Double) object).doubleValue());
} else if (object instanceof Float) {
returnValue = new FloatToken(((Float) object).floatValue());
} else if (object instanceof Complex) {
returnValue = new ComplexToken((Complex) object);
} else if (object instanceof FixPoint) {
returnValue = new FixToken((FixPoint) object);
} else if (object instanceof String) {
returnValue = new StringToken((String) object);
} else if (object instanceof boolean[][]) {
returnValue = new BooleanMatrixToken((boolean[][]) object);
} else if (object instanceof int[][]) {
returnValue = new IntMatrixToken((int[][]) object);
} else if (object instanceof long[][]) {
returnValue = new LongMatrixToken((long[][]) object);
} else if (object instanceof double[][]) {
returnValue = new DoubleMatrixToken((double[][]) object);
} else if (object instanceof Complex[][]) {
returnValue = new ComplexMatrixToken((Complex[][]) object);
} else if (object instanceof FixPoint[][]) {
returnValue = new FixMatrixToken((FixPoint[][]) object);
} else if (object instanceof double[]) {
DoubleToken[] temp = new DoubleToken[((double[]) object).length];
for (int j = 0; j < temp.length; j++) {
temp[j] = new DoubleToken(((double[]) object)[j]);
}
returnValue = new ArrayToken(temp);
} else if (object instanceof Complex[]) {
ComplexToken[] temp = new ComplexToken[((Complex[]) object).length];
for (int j = 0; j < temp.length; j++) {
temp[j] = new ComplexToken(((Complex[]) object)[j]);
}
returnValue = new ArrayToken(temp);
} else if (object instanceof int[]) {
IntToken[] temp = new IntToken[((int[]) object).length];
for (int j = 0; j < temp.length; j++) {
temp[j] = new IntToken(((int[]) object)[j]);
}
returnValue = new ArrayToken(temp);
} else if (object instanceof long[]) {
LongToken[] temp = new LongToken[((long[]) object).length];
for (int j = 0; j < temp.length; j++) {
temp[j] = new LongToken(((long[]) object)[j]);
}
returnValue = new ArrayToken(temp);
} else if (object instanceof boolean[]) {
BooleanToken[] temp = new BooleanToken[((boolean[]) object).length];