program lisdl
  implicit none
  integer(8) :: n, a, b, h, p, s, i, j
  read(*,*) n, a, b
  if ((a+b.gt.n+1_8).or.(a*b.lt.n)) then
    write(*,'(i0)') -1
    stop
  end if
  write(*,'(i0)',advance='no') b
  do i = b-1_8, 1_8, -1_8
    write(*,'(x,i0)',advance='no') i
  end do
  h = n-a-b+1_8
  p = b+1_8
  do i = 0_8, a-2_8, 1_8
    s = min(h,b-1_8)+1_8
    h = h-s+1_8
    do j = p+s-1_8, p, -1_8
      write(*,'(x,i0)',advance='no') j
    end do
    p = p+s
  end do
  write(*,*)
  stop
end program lisdl