#include <bits/stdc++.h>
using namespace std;
const int N = 1000;
int main() {
  int a, b, l, r, i, len, ans;
  char ch;
  string s = "";
  set<char> st;
  cin >> a >> b >> l >> r;
  for (i = 0, ch = 'a'; i < a; i++) s += (char)ch + i;
  ch = (char)ch + i - 1;
  s += string(b, ch);
  if (a <= b) {
    for (i = 0, ch = 'a'; i < a - 1; i++) s += (char)ch + i;
    ch = 'z';
    s += string(b + 1, ch);
  } else {
    for (i = 0, ch = 'a'; i < b; i++) s += (char)ch + i;
    for (i = 0, ch = 'z'; i < a - b - 1; i++) s += (char)ch - i;
    ch = (char)ch - i;
    s += string(b + 1, ch);
  }
  len = s.length();
  if (r - l + 1 >= len) {
    for (i = 0; i < len; i++) st.insert(s[i]);
    ans = st.size();
  } else {
    l = (l - 1) % len;
    r = (r - 1) % len;
    if (l <= r) {
      for (i = l; i <= r; i++) st.insert(s[i]);
    } else {
      for (i = l; i < len; i++) st.insert(s[i]);
      for (i = 0; i <= r; i++) st.insert(s[i]);
    }
    ans = st.size();
    if (a > b) {
      st.clear();
      s = "";
      for (i = 0, ch = 'a'; i < a; i++) s += (char)ch + i;
      ch = ch + i - (a - b);
      s += string(b, ch);
      for (i = 0, ch = 'a'; i < b; i++) s += (char)ch + i;
      for (i = 0, ch = 'z'; i < a - b - 1; i++) s += (char)ch - i;
      s += string(b, 'z');
      for (i = l; i < len; i++) st.insert(s[i]);
      for (i = 0; i <= r; i++) st.insert(s[i]);
      i = st.size();
      ans = min(ans, i);
    }
  }
  cout << ans << endl;
  return 0;
}
