#include <stdint.h>
#include <stdbool.h>
#define SPIRAL_MAP_CAP 64
#define SPIRAL_LOOP_CAP 16777216
static int32_t spiral_map_key[SPIRAL_MAP_CAP];
static int32_t spiral_map_val[SPIRAL_MAP_CAP];
static int32_t spiral_map_used[SPIRAL_MAP_CAP];
static int32_t spiral_map_lookup(int32_t key) {
    int32_t i;
    for (i = 0; i < SPIRAL_MAP_CAP; i++) {
        if (spiral_map_used[i] && spiral_map_key[i] == key) return spiral_map_val[i];
    }
    return 0;
}
static int32_t spiral_map_update(int32_t key, int32_t val) {
    int32_t i;
    int32_t free_slot = -1;
    for (i = 0; i < SPIRAL_MAP_CAP; i++) {
        if (spiral_map_used[i] && spiral_map_key[i] == key) { spiral_map_val[i] = val; return 0; }
        if (!spiral_map_used[i] && free_slot < 0) free_slot = i;
    }
    if (free_slot < 0) return 1;
    spiral_map_used[free_slot] = 1;
    spiral_map_key[free_slot] = key;
    spiral_map_val[free_slot] = val;
    return 0;
}
static int32_t spiral_main(void) {
    int32_t v0 = 0;
    v0 = spiral_map_update(7, 42);
    int32_t v1 = 0;
    v1 = spiral_map_lookup(7);
    int32_t v2 = 0;
    v2 = spiral_map_update(7, 9);
    int32_t v3 = 0;
    v3 = spiral_map_lookup(7);
    int32_t v4 = 0;
    v4 = spiral_map_lookup(8);
    int32_t v5 = 0;
    v5 = (v0 + v2);
    int32_t v6 = 0;
    v6 = (v1 - 42);
    int32_t v7 = 0;
    v7 = (v5 + v6);
    int32_t v8 = 0;
    v8 = (v3 - 9);
    int32_t v9 = 0;
    v9 = (v7 + v8);
    int32_t v10 = 0;
    v10 = (v9 + v4);
    return v10;
}
int main(void) {
    return spiral_main();
}
