sub gcd{ my($a,$b)=@_; $a?gcd($b%$a,$a):$b; } sub f{ my($n,$g)=@_; if($n){ for($a..$b){ f($n-1,gcd($_,$g)%$m); } }else{ $z=$z*$g%$m; } } $m=1e9+7; $z=1; ($a,$b,$n)=glob<>; f($n,0); print $z;