public static long unsignedInt (byte[] byteArray, int selector, int byteOrdering)
		{
		// byteOrdering tells how bytes are stored
		// selector should always point to lowest byte position of range
		
		// local vars
		int a = 0 ;
		
		// case out on the storage scheme
		switch (byteOrdering) {
			
			case HI_TO_LO:	// aka BIG_ENDIAN
			
				a = ((int) (byteArray[selector++] & 0xFF)) << 24;
				a += ((int) (byteArray[selector++] & 0xFF)) << 16;
				a += ((int) (byteArray[selector++] & 0xFF)) << 8;
				a += ((int) (byteArray[selector] & 0xFF)) ;
				break ;
				
			case LO_TO_HI:	// aka LITTLE_ENDIAN
			
				a = ((int) (byteArray[selector++] & 0xFF)) ;
				a += ((int) (byteArray[selector++] & 0xFF)) << 8;
				a += ((int) (byteArray[selector++] & 0xFF)) << 16;
				a += ((int) (byteArray[selector] & 0xFF)) << 24;
				break ;
				
			default:
				break ;
				
			} // end switch
		
		// bye bye
		return a ;

		
		} // end method unsignedInt