#include <bits/stdc++.h>
using namespace std;
const int N=1e6+5;char c[N];int dp[N],p;
#define chk(c1,c2) (c1=='('&&c2==')')||(c1=='['&&c2==']')
signed main(){for(register int i=1;(c[i]=getchar_unlocked())!='\n';i++)
dp[i]=chk(c[i-dp[i-1]-1],c[i])?dp[i-1]+2+dp[i-dp[i-1]-2]:0,dp[i]>dp[p]?p=i:0;
for(register int i=p-dp[p]+1;i<=p;i++)putchar_unlocked(c[i]);}