Value getValue()
		{
			
			
			switch (type)
			{
			case NULL:
			case UNDEFINED:
				return (Value)objValue;
			case BOOLEAN:
				return new BooleanValue(value!=0);
			case NUMBER:
				return new NumberValue(value);
			case STRING:
				return new StringValue((String)objValue);
			case OBJECT:
				return (ObjectValue)objValue;
			case FUNCTION:
				return (FunctionValue)objValue;
			}
				
			throw new UnimplementedException();
		
		
		}