#include<stdlib.h>
#include<stdio.h>

typedef struct Stack {
	char date;
	struct Stack* next;
}Stack;
void push(Stack* stacktop, char e) {
	Stack* s = (Stack*)malloc(sizeof(Stack));
	s->date = e;
	s->next = stacktop->next;
	stacktop->next = s;
}
void pop(Stack* stacktop) {
	Stack* p = stacktop->next;
	stacktop->next = p->next;
	free(p);
}
int main() {
	Stack stacktop;
	stacktop.date = ' ';
	stacktop.next = NULL;
	char c = ' ';
	scanf("%c", &c);
	while ('\n' != c) {
		push(&stacktop, c);
		scanf("%c", &c);
	}
	Stack out;
	out.next = NULL;
	while (stacktop.next != NULL) {
		if (out.next == NULL) {
			push(&out, stacktop.next->date);
			pop(&stacktop);
		}
		if (stacktop.next == NULL) {
			break;
		}
		char date = stacktop.next->date;
		if (date != out.next->date) {
			push(&out, date);
			pop(&stacktop);
		}
		else {
			pop(&stacktop);
			pop(&out);
		}
	}
	if (out.next == NULL) {
		printf("0");
	}
	else {
		while (out.next != NULL) {
			printf("%c", out.next->date);
			pop(&out);
		}
	}
	return 0;
}