local n, a, b = io.read("*n", "*n", "*n")
local bmax = n + 1 - a
local bmin = math.ceil(n / a)
if n < a or b < bmin or bmax < b then
  print(-1)
else
  local t = {}
  for i = 1, a do
    t[i] = n - a + i
  end
  local curmax = n - a
  local rem = n + 1 - a - b
  while 0 < rem do
    if a - 1 <= rem then
      for i = 1, a do
        table.insert(t, curmax - a + i)
      end
      curmax = curmax - a
      rem = rem - a + 1
    else
      for i = 1, rem + 1 do
        table.insert(t, curmax - rem - 1 + i)
      end
      curmax = curmax - rem - 1
      rem = 0
    end
  end
  for i = curmax, 1, -1 do
    table.insert(t, i)
  end
  print(table.concat(t, " "))
end
