#include <bits/stdc++.h>
using namespace std;

const int maxN = 1e6 + 10;

int n;
int cnt[3], p[3];
int b[maxN + 1], a[maxN + 1];
bool flag[maxN + 1];
char s[maxN + 1];

inline bool comp(int a, int b) { return cnt[a] < cnt[b]; }

inline void build()
{
	int t = n; n = 0;
	for(int i = 1; i <= t; i++)
		if(!flag[i]) a[++ n] = a[i];
	for(int i = 1; i <= n; i++) flag[i] = false;
}

inline void delc()
{
	if(cnt[ p[1] ] == cnt[ p[2] ]) return;
	int l = 1, r;
	while(l <= n)
	{
		if(a[l] == p[0]) l ++;
		if(l > n) break;
		r = l + 1;
		while(a[r] != p[0] && r <= n) r ++;
		r --;
		if(l != r || l == 1 || r == n)
		{
			if(a[l] == p[2] && !flag[l])
			{
				flag[l] = true;
				cnt[ p[2] ] --;
				if(cnt[ p[1] ] == cnt[ p[2] ]) break;
			}
			if(a[r] == p[2] && !flag[r])
			{
				flag[r] = true;
				cnt[ p[2] ] --;
				if(cnt[ p[1] ] == cnt[ p[2] ]) break;
			}
		}
		l = r + 1;
	}
	build();
	if(cnt[ p[1] ] == cnt[ p[2] ]) return;
	for(int i = 1; i < n; i++)
	{
		if(flag[i]) continue;
		if(a[i] == p[0] && a[i + 1] == p[2])
		{
			flag[i] = flag[i + 1] = true;
			cnt[ p[0] ] --; cnt[ p[2] ] --;
			if(cnt[ p[1] ] == cnt[ p[2] ]) break;
		}
	}
	build();
}

inline void get()
{
	if(cnt[ p[0] ] == cnt[ p[1] ]) return;
	int l = 1, r;
	while(l <= n)
	{
		if(a[l] == p[0]) l ++;
		if(l > n) break;
		r = l + 1;
		while(a[r] != p[0] && r <= n) r ++;
		r --;
		int len = r - l + 1, fk = 0;
		for(int i = l; i < r; i++)
			if(a[i] == p[1] && a[i + 1] == p[2])
			{
				if(l > 1 && r < n && len <= 2) continue;
				flag[i] = flag[i + 1] = true;
				cnt[ p[1] ] --; cnt[ p[2] ] --;
				len -= 2;
				if(cnt[ p[0] ] == cnt[ p[1] ]) { fk = 1; break; }
			}
		if(fk) break;
		l = r + 1;
	}
	build();
}

int main()
{
	scanf("%s", s + 1);
	
	n = strlen(s + 1);
	a[0] = -1;
	for(int i = 1; i <= n; i++)
	{
		a[i] = s[i] - 'A';
		if(a[i] == a[i - 1]) flag[i] = true;
	}
	build();

	for(int i = 1; i <= n; i++) cnt[ a[i] ] ++;
	for(int i = 0; i < 3; i++) p[i] = i;
	sort(p, p + 3, comp);

	delc();
	get();

	for(int i = 1; i <= n; i++) putchar(a[i] + 'A');
	puts("");
	return 0;
}
