LONG_MAX
#undef LONG_MAX
#define LONG_MAX __LONG_MAX__
# define LONG_MAX 2147483647
# define LONG_MAX ((long int) (ULONG_MAX >> 1))