#include <iostream>
#include <string>

using namespace std;

int main(){
 int n;
 cin >> n;
 string a, b;
 cin >> a >> b;
 for(int i = 0;i < n;i++){
  if(a.substr(i) == b.substr(0, n - i)){
   cout << n + i << endl;return 0;
  }
 }
cout << n * 2 << endl;
}
### Prompt

Construct a Cpp code solution to the problem outlined:

Snuke is interested in strings that satisfy the following conditions:

* The length of the string is at least N.
* The first N characters equal to the string s.
* The last N characters equal to the string t.



Find the length of the shortest string that satisfies the conditions.

Constraints

* 1≤N≤100
* The lengths of s and t are both N.
* s and t consist of lowercase English letters.

Input

The input is given from Standard Input in the following format:


N
s
t


Output

Print the length of the shortest string that satisfies the conditions.

Examples

Input

3
abc
cde


Output

5


Input

1
a
z


Output

2


Input

4
expr
expr


Output

4

### Response

```cpp
#include <iostream>
#include <string>

using namespace std;

int main(){
 int n;
 cin >> n;
 string a, b;
 cin >> a >> b;
 for(int i = 0;i < n;i++){
  if(a.substr(i) == b.substr(0, n - i)){
   cout << n + i << endl;return 0;
  }
 }
cout << n * 2 << endl;
}
```