#include<stdio.h>
#include<string.h>
char a[100010],b[100010];
int main()
{
	int n,i,m,k;
	while(scanf("%d",&n)!=EOF)
	{
		scanf("%s",a);
		k=strlen(a);
		b[0]='S';
		b[1]='S';
		m=1;
		for(i=1;i<k-1;i++)
		{
			if(b[i]=='S')
			{
				if(a[i]=='o')
				b[i+1]=b[i-1];
				else
				{
					if(b[i-1]=='S')
					b[i+1]='W';
					else
					b[i+1]='S';
				}
			}
			else
			{
				if(a[i]=='x')
				b[i+1]=b[i-1];
				else
				{
					if(b[i-1]=='S')
					b[i+1]='W';
					else
					b[i+1]='S';
				}
			}
		}
		if(b[k-1]=='W')
		{
			if(a[k-1]=='o'&&b[k-2]==b[0])
			m=0;
			else
			if(a[k-1]=='x'&&b[k-2]!=b[0])
			m=0;
		}
		else
		{
			if(a[k-1]=='o'&&b[k-2]!=b[0])
			m=0;
			else
			if(a[k-1]=='x'&&b[k-2]==b[0])
			m=0;
		}
		if(b[0]=='S')
		{
			if(a[0]=='o'&&b[1]!=b[k-1])
			m=0;
			else
			if(a[0]=='x'&&b[1]==b[k-1])
			m=0;
		}
		else
		if(b[0]=='W')
		{
			if(a[0]=='o'&&b[1]==b[k-1])
			m=0;
			else
			if(a[0]=='x'&&b[1]!=b[k-1])
			m=0;
		}
		if(m)
		{
			b[k]='\0';
			printf("%s\n",b);
			continue;
		}
		b[0]='S';
		b[1]='W';
		m=1;
		for(i=1;i<k-1;i++)
		{
			if(b[i]=='S')
			{
				if(a[i]=='o')
				b[i+1]=b[i-1];
				else
				{
					if(b[i-1]=='S')
					b[i+1]='W';
					else
					b[i+1]='S';
				}
			}
			else
			{
				if(a[i]=='x')
				b[i+1]=b[i-1];
				else
				{
					if(b[i-1]=='S')
					b[i+1]='W';
					else
					b[i+1]='S';
				}
			}
		}
		if(b[k-1]=='W')
		{
			if(a[k-1]=='o'&&b[k-2]==b[0])
			m=0;
			else
			if(a[k-1]=='x'&&b[k-2]!=b[0])
			m=0;
		}
		else
		{
			if(a[k-1]=='o'&&b[k-2]!=b[0])
			m=0;
			else
			if(a[k-1]=='x'&&b[k-2]==b[0])
			m=0;
		}
		if(b[0]=='S')
		{
			if(a[0]=='o'&&b[1]!=b[k-1])
			m=0;
			else
			if(a[0]=='x'&&b[1]==b[k-1])
			m=0;
		}
		else
		if(b[0]=='W')
		{
			if(a[0]=='o'&&b[1]==b[k-1])
			m=0;
			else
			if(a[0]=='x'&&b[1]!=b[k-1])
			m=0;
		}
		if(m)
		{
			b[k]='\0';
			printf("%s\n",b);
			continue;
		}
		b[0]='W';
		b[1]='S';
		m=1;
		for(i=1;i<k-1;i++)
		{
			if(b[i]=='S')
			{
				if(a[i]=='o')
				b[i+1]=b[i-1];
				else
				{
					if(b[i-1]=='S')
					b[i+1]='W';
					else
					b[i+1]='S';
				}
			}
			else
			{
				if(a[i]=='x')
				b[i+1]=b[i-1];
				else
				{
					if(b[i-1]=='S')
					b[i+1]='W';
					else
					b[i+1]='S';
				}
			}
		}
		if(b[k-1]=='W')
		{
			if(a[k-1]=='o'&&b[k-2]==b[0])
			m=0;
			else
			if(a[k-1]=='x'&&b[k-2]!=b[0])
			m=0;
		}
		else
		{
			if(a[k-1]=='o'&&b[k-2]!=b[0])
			m=0;
			else
			if(a[k-1]=='x'&&b[k-2]==b[0])
			m=0;
		}
		if(b[0]=='S')
		{
			if(a[0]=='o'&&b[1]!=b[k-1])
			m=0;
			else
			if(a[0]=='x'&&b[1]==b[k-1])
			m=0;
		}
		else
		if(b[0]=='W')
		{
			if(a[0]=='o'&&b[1]==b[k-1])
			m=0;
			else
			if(a[0]=='x'&&b[1]!=b[k-1])
			m=0;
		}
		if(m)
		{
			b[k]='\0';
			printf("%s\n",b);
			continue;
		}
		b[0]='W';
		b[1]='W';
		m=1;
		for(i=1;i<k-1;i++)
		{
			if(b[i]=='S')
			{
				if(a[i]=='o')
				b[i+1]=b[i-1];
				else
				{
					if(b[i-1]=='S')
					b[i+1]='W';
					else
					b[i+1]='S';
				}
			}
			else
			{
				if(a[i]=='x')
				b[i+1]=b[i-1];
				else
				{
					if(b[i-1]=='S')
					b[i+1]='W';
					else
					b[i+1]='S';
				}
			}
		}
		if(b[k-1]=='W')
		{
			if(a[k-1]=='o'&&b[k-2]==b[0])
			m=0;
			else
			if(a[k-1]=='x'&&b[k-2]!=b[0])
			m=0;
		}
		else
		{
			if(a[k-1]=='o'&&b[k-2]!=b[0])
			m=0;
			else
			if(a[k-1]=='x'&&b[k-2]==b[0])
			m=0;
		}
		if(b[0]=='S')
		{
			if(a[0]=='o'&&b[1]!=b[k-1])
			m=0;
			else
			if(a[0]=='x'&&b[1]==b[k-1])
			m=0;
		}
		else
		if(b[0]=='W')
		{
			if(a[0]=='o'&&b[1]==b[k-1])
			m=0;
			else
			if(a[0]=='x'&&b[1]!=b[k-1])
			m=0;
		}
		if(m)
		{
			b[k]='\0';
			printf("%s\n",b);
			continue;
		}
		printf("-1\n");
	}
	return 0;
}

Measured memory_bytes: 512