#include <bits/stdc++.h>
using namespace std;
char a[200005], b[200005];
int n, q1[200005], q2[200005];
int k, ans1[500005], ans2[500005];
int main() {
  scanf("%d%s%s", &n, a + 1, b + 1);
  for (int i = (int)(1); i <= (int)(n); i++)
    if (a[i] == 'a' && b[i] == 'b')
      q1[++*q1] = i;
    else if (a[i] == 'b' && b[i] == 'a')
      q2[++*q2] = i;
  if (((*q1) + (*q2)) % 2 == 1) return puts("-1"), 0;
  for (; *q1 >= 2; *q1 -= 2) ans1[++k] = q1[*q1], ans2[k] = q1[(*q1) - 1];
  for (; *q2 >= 2; *q2 -= 2) ans1[++k] = q2[*q2], ans2[k] = q2[(*q2) - 1];
  if (*q1) {
    ans1[++k] = q1[1];
    ans2[k] = q1[1];
    ans1[++k] = q1[1];
    ans2[k] = q2[1];
  }
  printf("%d\n", k);
  for (int i = (int)(1); i <= (int)(k); i++)
    printf("%d %d\n", ans1[i], ans2[i]);
}
