#include<iostream>
#include<stack>
using namespace std;
main()
{
while(1)
{
stack<int> st;
long n,i,pos,arr[10000],flag=1;
cin>>n;
if(n==0)
break;
for(i=0;i<n;i++)
{
cin>>arr[i];
}
pos=1;
for(i=0;i<n;i++)
{
if(st.size()!=0)
{
if(st.top()==pos)
{
st.pop();
pos++;
}
}
if(arr[i]==pos)
{
pos++;
if(st.size()!=0)
{
if(st.top()==pos)
{
st.pop();
pos++;
}
}
}
else
st.push(arr[i]);
}
//cout<<"pos is:"<<pos<<endl;
long size=st.size();
/*for(i=0;i<size;i++)
{
cout<<st.top()<<" ";
st.pop();
}*/
for(i=0;i<size;i++)
{
if(st.top()==pos)
{
pos++;
st.pop();
}
else
{
flag=0;
cout<<"no\n";
break;
}
}
if(flag==1)
{
cout<<"yes\n";
}
while (!st.empty())
{
st.pop();
}
// cout<<"stack size is:"<<st.size()<<endl;
}
}