#include<iostream>
#include<algorithm>
#include<vector>
#include<queue>
#define lol(i,n) for(int i=0;i<n;i++)
#define mod 1000000007
typedef long long ll;
using namespace std;
pair<int,int> z[100010];
int h,w,n;
int main(){
	cin>>w>>h>>n;
	lol(i,n)cin>>z[i].first>>z[i].second;
	sort(z,z+n,greater<pair<int,int> >());
	int ans=mod,maxi=0;
	lol(i,n){
		ans=min(ans,maxi+z[i].first);
		maxi=max(maxi,z[i].second);
	}
	ans=min(ans,maxi);
	cout<<ans<<endl;
	return 0;
}

