#include <stdint.h>
#include <stdio.h>
#include <ctype.h>
int main() {
char features[] = "0000000000b7011c0200000000000000";
uint8_t features_bytes[16];
char * p = features;
uint8_t i = 0;
while ( *p )
{
*p = toupper( *p );
*(p+1) = toupper( *(p+1) );
uint8_t highNibble = *p < '9' ? *p - '0' : *p - '7';
uint8_t lowNibble = *(p+1) < '9' ? *(p+1) - '0' : *(p+1) - '7';
features_bytes[i++] = ( highNibble << 4 ) | lowNibble;
p += 2;
}
for ( int j = 0; j < 16; j++ )
printf( "%d\n", features_bytes[j] );
return 0;
}
I2luY2x1ZGUgPHN0ZGludC5oPgojaW5jbHVkZSA8c3RkaW8uaD4KI2luY2x1ZGUgPGN0eXBlLmg+CiAKaW50IG1haW4oKSB7CiAKCWNoYXIgZmVhdHVyZXNbXSA9ICIwMDAwMDAwMDAwYjcwMTFjMDIwMDAwMDAwMDAwMDAwMCI7CiAKCXVpbnQ4X3QgZmVhdHVyZXNfYnl0ZXNbMTZdOwoJY2hhciAqIHAgID0gZmVhdHVyZXM7Cgl1aW50OF90IGkgPSAwOwogCgl3aGlsZSAoICpwICkKCXsKCQkqcCAgICAgID0gdG91cHBlciggKnAgKTsKCQkqKHArMSkgID0gdG91cHBlciggKihwKzEpICk7IAoJCXVpbnQ4X3QgaGlnaE5pYmJsZSAgPSAqcCAgICAgPCAnOScgPyAqcCAgICAgLSAnMCcgOiAqcCAgICAgLSAnNyc7CgkJdWludDhfdCBsb3dOaWJibGUgICA9ICoocCsxKSA8ICc5JyA/ICoocCsxKSAtICcwJyA6ICoocCsxKSAtICc3JzsKCQlmZWF0dXJlc19ieXRlc1tpKytdID0gKCBoaWdoTmliYmxlIDw8IDQgKSB8IGxvd05pYmJsZTsKICAJCXAgKz0gMjsKCX0KIAoJZm9yICggaW50IGogPSAwOyBqIDwgMTY7IGorKyApCgkJcHJpbnRmKCAiJWRcbiIsIGZlYXR1cmVzX2J5dGVzW2pdICk7CiAKCXJldHVybiAwOwp9