function Pascals-Triangle3 { [CmdLetBinding()] param ( # Single parameter is the number of levels [Parameter(Mandatory=$true)][ValidateRange(1, [int]::MaxValue)][int]$Levels ) process { ($r=[System.Numerics.BigInteger[]]::new(($l=$Levels)+1))[0]=1 1..$l|%{"$($r|?{$_-ne0})";$t=1;1..$_|%{$a=$r[$_];$r[$_]+=$t;$t=$a}} } }