#include <iostream>
#include <string>
#include <vector>
enum WindingOrder {
RIGHT=0,
TOP,
LEFT,
BOTTOM
};
int main() {
std::vector<int> array = {2,4,8,9};
std::vector<int> output(4);
std::vector<WindingOrder> test = {LEFT,RIGHT,BOTTOM,TOP};
for (auto winding : test) {
for (size_t i=0; i<4; ++i) {
output[i] = array[(i+(i==winding)*2)%4];
}
std::cout << "winding " << winding << ": " << output[0] << output[1] << output[2] << output[3] << std::endl;
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8dmVjdG9yPgoKZW51bSBXaW5kaW5nT3JkZXIgewogICAgUklHSFQ9MCwKICAgIFRPUCwKICAgIExFRlQsCiAgICBCT1RUT00KfTsKCmludCBtYWluKCkgewogICAgc3RkOjp2ZWN0b3I8aW50PiBhcnJheSA9IHsyLDQsOCw5fTsKICAgIHN0ZDo6dmVjdG9yPGludD4gb3V0cHV0KDQpOwoKICAgIHN0ZDo6dmVjdG9yPFdpbmRpbmdPcmRlcj4gdGVzdCA9IHtMRUZULFJJR0hULEJPVFRPTSxUT1B9OwogICAgZm9yIChhdXRvIHdpbmRpbmcgOiB0ZXN0KSB7CiAgICAgICAgZm9yIChzaXplX3QgaT0wOyBpPDQ7ICsraSkgewogICAgICAgICAgICBvdXRwdXRbaV0gPSBhcnJheVsoaSsoaT09d2luZGluZykqMiklNF07CiAgICAgICAgfQogICAgICAgIHN0ZDo6Y291dCA8PCAid2luZGluZyAiIDw8IHdpbmRpbmcgPDwgIjogIiA8PCBvdXRwdXRbMF0gPDwgb3V0cHV0WzFdIDw8IG91dHB1dFsyXSA8PCBvdXRwdXRbM10gPDwgc3RkOjplbmRsOwogICAgfQp9