typedef enum {a,b,c} item_t;
typedef item_t[stack 2] buffer_t;
place items (0..#item_t) item_t: item_t i: i;
place q (1) buffer_t: {};
trans write in { items: i; q: q; } out { q: q+i; } gate %q != 0;
trans read in { q: q; } out { q: -q; items: *q; } gate /q != 0;
