#include <stdio.h>
int hasEOF = 0;
int readchar() {
static int N = 1<<20;
static char buf[1<<20];
static char *p = buf, *end = buf;
if(p == end) {
if((end
= buf
+ fread(buf
, 1, N
, stdin
)) == buf
) { hasEOF = 1;
return EOF;
}
p = buf;
}
return *p++;
}
int ReadInt(int *x) {
char c, neg;
while((c = readchar()) < '-') {if(c == EOF) return 0;}
neg = (c == '-') ? -1 : 1;
*x = (neg == 1) ? c-'0' : 0;
while((c = readchar()) >= '0')
*x = (*x << 3) + (*x << 1) + c-'0';
*x *= neg;
return 1;
}
int main() {
int n;
long long int bookshelf=0;
while (ReadInt(&n)) {
long long int flag=bookshelf;
int i=0;
for(i=0;i<8;i++)
{
if(n==(flag&255))
{
bookshelf=bookshelf<<(64-8*i);
bookshelf=bookshelf>>(56-8*i);
flag=flag>>8;
bookshelf= bookshelf+(flag<<(8*i+8))+n;
break;
}
flag=flag>>8;
}
if(i==8)
{
bookshelf=(bookshelf<<8)+n;
}
}
printf("%lld",(bookshelf
>>56)); for(int j=1;j<8;j++)
{
printf(" %lld",((bookshelf
>>(56-8*j
))&255)); }
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CmludCBoYXNFT0YgPSAwOwppbnQgcmVhZGNoYXIoKSB7CiAgICBzdGF0aWMgaW50IE4gPSAxPDwyMDsKICAgIHN0YXRpYyBjaGFyIGJ1ZlsxPDwyMF07CiAgICBzdGF0aWMgY2hhciAqcCA9IGJ1ZiwgKmVuZCA9IGJ1ZjsKICAgIGlmKHAgPT0gZW5kKSB7CiAgICAgICAgaWYoKGVuZCA9IGJ1ZiArIGZyZWFkKGJ1ZiwgMSwgTiwgc3RkaW4pKSA9PSBidWYpIHsKICAgICAgICAgICAgaGFzRU9GID0gMTsKICAgICAgICAgICAgcmV0dXJuIEVPRjsgICAgCiAgICAgICAgfQogICAgICAgIHAgPSBidWY7CiAgICB9CiAgICByZXR1cm4gKnArKzsKfQppbnQgUmVhZEludChpbnQgKngpIHsKICAgIGNoYXIgYywgbmVnOwogICAgd2hpbGUoKGMgPSByZWFkY2hhcigpKSA8ICctJykgICAge2lmKGMgPT0gRU9GKSByZXR1cm4gMDt9CiAgICBuZWcgPSAoYyA9PSAnLScpID8gLTEgOiAxOwogICAgKnggPSAobmVnID09IDEpID8gYy0nMCcgOiAwOwogICAgd2hpbGUoKGMgPSByZWFkY2hhcigpKSA+PSAnMCcpCiAgICAgICAgKnggPSAoKnggPDwgMykgKyAoKnggPDwgMSkgKyBjLScwJzsKICAgICp4ICo9IG5lZzsKICAgIHJldHVybiAxOwp9CmludCBtYWluKCkgewogICAgaW50IG47CiAgICBsb25nIGxvbmcgaW50IGJvb2tzaGVsZj0wOwogICAgd2hpbGUgKFJlYWRJbnQoJm4pKSB7CiAgICAgICAgbG9uZyBsb25nIGludCBmbGFnPWJvb2tzaGVsZjsKICAgICAgICBpbnQgaT0wOwogICAgICAgIGZvcihpPTA7aTw4O2krKykKICAgICAgICB7CiAgICAgICAgICAgIGlmKG49PShmbGFnJjI1NSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGJvb2tzaGVsZj1ib29rc2hlbGY8PCg2NC04KmkpOwogICAgICAgICAgICAgICAgYm9va3NoZWxmPWJvb2tzaGVsZj4+KDU2LTgqaSk7CiAgICAgICAgICAgICAgICBmbGFnPWZsYWc+Pjg7CiAgICAgICAgICAgICAgICBib29rc2hlbGY9IGJvb2tzaGVsZisoZmxhZzw8KDgqaSs4KSkrbjsKICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGZsYWc9ZmxhZz4+ODsKICAgICAgICB9CiAgICAgICAgaWYoaT09OCkKICAgICAgICB7CiAgICAgICAgICAgIGJvb2tzaGVsZj0oYm9va3NoZWxmPDw4KStuOwogICAgICAgIH0KICAgIH0gICAgCiAgICBwcmludGYoIiVsbGQiLChib29rc2hlbGY+PjU2KSk7CiAgICBmb3IoaW50IGo9MTtqPDg7aisrKQogICAgewogICAgICAgIHByaW50ZigiICVsbGQiLCgoYm9va3NoZWxmPj4oNTYtOCpqKSkmMjU1KSk7CiAgICB9CiAgICByZXR1cm4gMDsKfQo=