//#ifndef READER_MINIMAL_LIBRARY_H_
//#define READER_MINIMAL_LIBRARY_H_
//
//#include "hardware.h"
//
//class MinimalLibrary
//{
//	public:
//		inline static byte ToLower(byte input)
//		{
//			if((input >= 'A') && (input <= 'Z'))
//			{
//				return input | 0x21;
//			}
//
//			return input;
//		}
//
//		inline static bool IsHexChar(byte character)
//		{
//			return ((character >= '0' && character <= '9') || (character >= 'A' && character <= 'F') || (character >= 'a' && character <= 'f'));
//		}
//
//		inline static byte GetHexVal(byte x)
//		{
//			return x & 0x40 ? (x & 0x0F) + 9 : x - '0';
//		}
//
//		inline static byte FromHex(byte *source)
//		{
//			byte retval = GetHexVal(*source) << 4;
//			return retval | GetHexVal(*++source);
//		}
//
//		inline static void ToHex(byte *start, byte *target, word length)
//		{
//			byte *end = start + length;
//
//			while(start != end)
//			{
//				byte temp = *start >> 4;
//				*target = (temp <= 9 ?  '0' : 55) + temp;
//				++target;
//				temp = *start & 0x0F;
//				*target = (temp <= 9 ?  '0' : 55) + temp;
//				++target;
//				++start;
//			}
//		}
//
//		template<class T>
//		static inline T Max(T a, T b)
//		{
//			return a > b ? a : b;
//		}
//
//		template<class T>
//		static inline T Min(T a, T b)
//		{
//			return a < b ? a : b;
//		}
//};
//
//
//#endif //READER_MINIMAL_LIBRARY_H_
