# Compute ISO 216 paper sizes for the A series## https://en.wikipedia.org/wiki/ISO_216structPaperSize{width:Length,height:Length,}fnpaper_size_A(n:Scalar)->PaperSize=ifn==0thenPaperSize{width:841mm,height:1189mm}elsePaperSize{width:floor_in(mm,paper_size_A(n-1).height/2),height:paper_size_A(n-1).width,}fnpaper_area(size:PaperSize)->Area=size.width*size.heightfnsize_as_string(size:PaperSize)="{size.width:>4} × {size.height:>5} {paper_area(size) -> cm²:>6.1f}"fnrow(n)="A{n:<3} {size_as_string(paper_size_A(n))}"print("Name Width Height Area ")print("---- ------- -------- ----------")print(join(map(row,range(0,10)),"\n"))