#include <assert.h>
#include <ctype.h>
#include <inttypes.h>
#include <limits.h>
#include <stdio.h>
int main(void)
{
// count chars
uintmax_t count_lower = 0, count_upper = 0;
for (int c
; (c
= getchar()) != EOF
; ) { assert(c
>= 0 && c
<= UCHAR_MAX
); // otherwise UB in ctype functions ++count_upper;
++count_lower;
}
printf("upper: %ju, lower: %ju\n", count_upper
, count_lower
); return !feof(stdin
); // success on eof }
I2luY2x1ZGUgPGFzc2VydC5oPgojaW5jbHVkZSA8Y3R5cGUuaD4KI2luY2x1ZGUgPGludHR5cGVzLmg+CiNpbmNsdWRlIDxsaW1pdHMuaD4KI2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgbWFpbih2b2lkKQp7CiAgLy8gY291bnQgY2hhcnMKICB1aW50bWF4X3QgY291bnRfbG93ZXIgPSAwLCBjb3VudF91cHBlciA9IDA7CiAgZm9yIChpbnQgYzsgKGMgPSBnZXRjaGFyKCkpICE9IEVPRjsgKSB7CiAgICBhc3NlcnQoYyA+PSAwICYmIGMgPD0gVUNIQVJfTUFYKTsgLy8gb3RoZXJ3aXNlIFVCIGluIGN0eXBlIGZ1bmN0aW9ucwogICAgaWYgKGlzdXBwZXIoYykpIC8vIEMgbG9jYWxlCiAgICAgICsrY291bnRfdXBwZXI7CiAgICBlbHNlIGlmIChpc2xvd2VyKGMpKQogICAgICArK2NvdW50X2xvd2VyOwogIH0KICBwcmludGYoInVwcGVyOiAlanUsIGxvd2VyOiAlanVcbiIsIGNvdW50X3VwcGVyLCBjb3VudF9sb3dlcik7CiAgcmV0dXJuICFmZW9mKHN0ZGluKTsgLy8gc3VjY2VzcyBvbiBlb2YKfQo=