#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, k;
  while (scanf("%d %d", &n, &k) == 2) {
    char s[1000005];
    memset(s, 0, sizeof(s));
    int t = 0;
    if (n == 1 && k == 1)
      printf("a\n");
    else if (k == 1)
      printf("-1\n");
    else if (n < k)
      printf("-1\n");
    else if (k == 2) {
      int l = k - 2;
      for (int i = 1; i <= n - l; i++) {
        if (i & 1)
          s[t++] = 'a';
        else
          s[t++] = 'b';
      }
      s[t] = '\0';
      printf("%s\n", s);
    } else if (k == 3) {
      int l = k - 2;
      for (int i = 1; i <= n - l; i++) {
        if (i & 1)
          s[t++] = 'a';
        else
          s[t++] = 'b';
      }
      for (int i = 1; i <= l; i++) {
        s[t++] = char('b' + i);
      }
      s[t] = '\0';
      printf("%s\n", s);
    } else {
      int l = k - 2;
      for (int i = 1; i <= n - l; i++) {
        if (i & 1)
          s[t++] = 'a';
        else
          s[t++] = 'b';
      }
      for (int i = 1; i <= l; i++) {
        s[t++] = char('b' + i);
      }
      s[t] = '\0';
      printf("%s\n", s);
    }
  }
  return 0;
}
