#include <inttypes.h>
#include <stdint.h>
#include <stdio.h>

void print(int64_t i) {
    printf("%" PRId64 "\n", i);
    printf("%" PRIu8 "\n", *((uint8_t*)&i));
    printf("%" PRIu8 "\n", *(((uint8_t*)&i) + 1));
    printf("%" PRIu8 "\n", *(((uint8_t*)&i) + 2));
    printf("%" PRIu8 "\n", *(((uint8_t*)&i) + 3));
    printf("%" PRIu8 "\n", *(((uint8_t*)&i) + 4));
    printf("%" PRIu8 "\n", *(((uint8_t*)&i) + 5));
    printf("%" PRIu8 "\n", *(((uint8_t*)&i) + 6));
    printf("%" PRIu8 "\n", *(((uint8_t*)&i) + 7));
}

int main() {
    int64_t i = 922337203685477580;
    i *= 10;
    i += 8;
    print(i);
    if (i == -i) {
        printf("They are equal!\n");
    }
    print(-i);
}