#include<bits/stdc++.h>

using namespace std;


int main(){
    int n;
    cin >> n;

    map<int,int> check_x;
    map<int, pair<int,int> > mp;
    vector<int> xses;

    vector< pair<int,int> > v;

    for(int i = 0; i < n; i++){
        int x,y;
        cin >> x >> y;
        if(check_x[x] == 0){
            mp[x].first = y;
            mp[x].second = y;
            xses.push_back(x);
            check_x[x] =1;
        }
        else{
            mp[x].first = min(mp[x].first, y);
            mp[x].second = max(mp[x].second, y);
        }
        // cout << x << " " << mp[x].first << " " << mp[x].second << endl;
        // v.push_back(make_pair(x,y));
    }
    // sort(v.begin(), v.end());
    sort(xses.begin(), xses.end());

    int sum = 0;
    int prev_x = 0;
    int prev_y = 0;

    for(int i = 0; i < xses.size(); i++){
        // cout << prev_x << " " << prev_y << endl;
        // cout << sum << endl << endl;
        // cout << i << endl;
        int x = xses[i];

        if(i != 0){
            sum+= abs(prev_x - x);
        }
        
        int sum1,sum2,sum3,sum4;
        if(i +1  < xses.size()){
            int next_x = xses[i+1];
            sum1 = abs(prev_y-mp[x].first) + abs(mp[x].first - mp[x].second) + abs(mp[x].second - mp[next_x].first);
            sum2 = abs(prev_y-mp[x].first) + abs(mp[x].first - mp[x].second) + abs(mp[x].second - mp[next_x].second);
            sum3 = abs(prev_y-mp[x].second) + abs(mp[x].second - mp[x].first) + abs(mp[x].first - mp[next_x].second);
            sum4 = abs(prev_y-mp[x].second) + abs(mp[x].second - mp[x].first) + abs(mp[x].first - mp[next_x].first);

            if(i == 0){
                sum1 = abs(mp[x].first - mp[next_x].first) + abs(mp[x].first - mp[x].second);
                sum2 = abs(mp[x].second - mp[next_x].second) + abs(mp[x].first - mp[x].second);
                sum3 = abs(mp[x].first - mp[next_x].second) + abs(mp[x].first - mp[x].second);
                sum4 = abs(mp[x].second - mp[next_x].first) + abs(mp[x].first - mp[x].second);
            }

            int min_sum = min(min(sum1,sum2),min(sum3 ,sum4));
            if(min_sum == sum1 || min_sum == sum2){
                if(i != 0){
                    sum += abs(prev_y - mp[x].first);
                    sum += abs(mp[x].first - mp[x].second);
                }
                
                prev_y = mp[x].second;
            }
            if(min_sum == sum3 || min_sum == sum4 ){
                if(i != 0){
                    sum += abs(prev_y - mp[x].second);
                    sum += abs(mp[x].first - mp[x].second);
                }
                prev_y = mp[x].first;
            }
        }
        else{
            sum1 = abs(prev_y - mp[x].first) + abs(mp[x].first - mp[x].second);
            sum2 = abs(prev_y - mp[x].second) + abs(mp[x].second - mp[x].first);
            sum += min(sum1,sum2);
        }
        prev_x = x;
    }
    // for(int i = 1; i < v.size(); i++){
    //     sum += abs(prev_x - v[i].first);
    //     sum += abs(prev_y - v[i].second);
    //     prev_x = v[i].first;
    //     prev_y = v[i].second;
    // }
    cout << sum << endl;
}