#include<bits/stdc++.h>;
#define pa pair<long long,long long>
#define fi first
#define ll long long
#define se second
using namespace std;
const long long M=1000000007;
int x;
vector<int> v;
set<vector<int>> sx;
long long kt(vector<int> v)
{
for(auto i:v) if(i!=0) return 0;
return 1;
}
long long tinh()
{
deque<pair<vector<int>,int>> dx;
dx.push_back({v,0});
sx.insert(v);
while(dx.empty()!=1)
{
vector<int> v1=dx.front().first;
int so=dx.front().second;
dx.pop_front();
vector<int> v2=v1;
for(long long i=0;i<=v1.size()-4;++i)
{
v2[i]=abs(v1[i]-v1[i+1]);
v2[i+1]=abs(v1[i+1]-v1[i+2]);
v2[i+2]=abs(v1[i+2]-v1[i+3]);
v2[i+3]=abs(v1[i+3]-v1[i]);
if(kt(v2)==1) return so+1;
if(sx.count(v2)==false)
{
sx.insert(v2);
dx.push_back({v2,so+1});
}
v2[i]=v1[i];
v2[i+1]=v1[i+1];
v2[i+2]=v1[i+2];
v2[i+3]=v1[i+3];
}
}
return 0;
}
int main()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
//freopen("BAI05.inp","r",stdin);
// freopen("BAI05.out","w",stdout);
while(cin >>x)
v.push_back(x);
cout <<tinh();
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD47CiNkZWZpbmUgcGEgcGFpcjxsb25nIGxvbmcsbG9uZyBsb25nPgojZGVmaW5lIGZpIGZpcnN0CiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgc2Ugc2Vjb25kCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmNvbnN0IGxvbmcgbG9uZyBNPTEwMDAwMDAwMDc7CmludCB4Owp2ZWN0b3I8aW50PiB2OwpzZXQ8dmVjdG9yPGludD4+IHN4Owpsb25nIGxvbmcga3QodmVjdG9yPGludD4gdikKewogICAgZm9yKGF1dG8gaTp2KSBpZihpIT0wKSByZXR1cm4gMDsKICAgIHJldHVybiAxOwp9CmxvbmcgbG9uZyB0aW5oKCkKewogICAgZGVxdWU8cGFpcjx2ZWN0b3I8aW50PixpbnQ+PiBkeDsKICAgIGR4LnB1c2hfYmFjayh7diwwfSk7CiAgICBzeC5pbnNlcnQodik7CiAgICB3aGlsZShkeC5lbXB0eSgpIT0xKQogICAgewogICAgICAgIHZlY3RvcjxpbnQ+IHYxPWR4LmZyb250KCkuZmlyc3Q7CiAgICAgICAgaW50IHNvPWR4LmZyb250KCkuc2Vjb25kOwogICAgICAgIGR4LnBvcF9mcm9udCgpOwogICAgICAgIHZlY3RvcjxpbnQ+IHYyPXYxOwogICAgICAgIGZvcihsb25nIGxvbmcgaT0wO2k8PXYxLnNpemUoKS00OysraSkKICAgICAgICB7CiAgICAgICAgICAgIHYyW2ldPWFicyh2MVtpXS12MVtpKzFdKTsKICAgICAgICAgICAgdjJbaSsxXT1hYnModjFbaSsxXS12MVtpKzJdKTsKICAgICAgICAgICAgdjJbaSsyXT1hYnModjFbaSsyXS12MVtpKzNdKTsKICAgICAgICAgICAgdjJbaSszXT1hYnModjFbaSszXS12MVtpXSk7CiAgICAgICAgICAgIGlmKGt0KHYyKT09MSkgcmV0dXJuIHNvKzE7CiAgICAgICAgICAgIGlmKHN4LmNvdW50KHYyKT09ZmFsc2UpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHN4Lmluc2VydCh2Mik7CiAgICAgICAgICAgICAgICBkeC5wdXNoX2JhY2soe3YyLHNvKzF9KTsKICAgICAgICAgICAgfQogICAgICAgICAgICB2MltpXT12MVtpXTsKICAgICAgICAgICAgdjJbaSsxXT12MVtpKzFdOwogICAgICAgICAgICB2MltpKzJdPXYxW2krMl07CiAgICAgICAgICAgIHYyW2krM109djFbaSszXTsKICAgICAgICB9CiAgICB9CiAgICByZXR1cm4gMDsKfQppbnQgbWFpbigpCnsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7CiAgICBjaW4udGllKDApOwogICAgY291dC50aWUoMCk7CiAgICAvL2ZyZW9wZW4oIkJBSTA1LmlucCIsInIiLHN0ZGluKTsKICAgLy8gZnJlb3BlbigiQkFJMDUub3V0IiwidyIsc3Rkb3V0KTsKICAgd2hpbGUoY2luID4+eCkKICAgICAgICB2LnB1c2hfYmFjayh4KTsKCiAgICBjb3V0IDw8dGluaCgpOwp9Cg==