private final long ktol(final K key) {
		long k;
		if (key instanceof Long) k = (Long)key;
		else if (key instanceof Number) k = ((Number)key).longValue();
		else if (key instanceof String) k =  new BigInteger(((String)key).getBytes()).longValue();
		else {
			ByteArrayOutputStream byteout = new ByteArrayOutputStream();
			try {
				ObjectOutputStream objectout = new ObjectOutputStream(byteout);
				objectout.writeObject( key ); 
			}
			catch(IOException e) { k = 0L; }
			k = new BigInteger(byteout.toByteArray()).longValue();
		}
		return k;
	}