code: private static int b64decode(char c)
  	{
  		int i = c;
  
  		if (i >= 'A' && i <= 'Z')
  		{
  			return i - 'A';
  		}
  
  		if (i >= 'a' && i <= 'z')
  		{
  			return i - 'a' + 26;
  		}
  
  		if (i >= '0' && i <= '9')
  		{
  			return i - '0' + 52;
  		}
  
  		if (i == '+')
  		{
  			return 62;
  		}
  
  		if (i == '/')
  		{
  			return 63;
  		}
  
  		return -1; // padding '='
  	}
docs: Return the 6-bit value corresponding to a base64 encoded char. If the character is the base64 padding character,
  '=', -1 is returned.
  
  @param c
  The character to decode
  @return The decoded 6-bit value, or -1 for padding.