#!/usr/bin/perl
my ($n,$p) = map { $_ - 0 } split(/\s+/,<STDIN>);
my @f=(2);
my @d=();
$#d=1000000;
for(my $i=3;$i<=$#d;$i+=2){
  next if $d[$i];
  push(@f,$i);
  for(my $j=$i+$i;$j<=$#d;$j+=$i){
    $d[$j] = 1;
  }
}
my %fa = ();
for(my $i=0;$i<=$#f;$i++){
  last if $p == 1;
  while( $p % $f[$i] == 0 ){
    $p /= $f[$i];
    $fa{$f[$i]}++;
  }
}
$fa{$p}++ if $p>1;
my $res = 1;
foreach my $k (keys %fa){
  $res *= ($k - 0) if $fa{$k}>=$n;
}
print "$res\n";
