[38;2;122;122;122m# A single line comment.[0m

[38;2;230;71;71mdefmodule[0m [38;2;117;215;236mGreeter[0m [38;2;230;71;71mdo[0m
  [38;2;122;122;122m@[0m[38;2;155;107;223mmoduledoc[0m [38;2;66;230;108m"""
  Greets people and computes Fibonacci numbers.
  """[0m

  [38;2;248;248;242m@[0m[38;2;155;107;223mdefault_name[0m [38;2;66;230;108m"world"[0m

  [38;2;122;122;122m@[0m[38;2;155;107;223mdoc[0m [38;2;66;230;108m"Return a greeting for `name`."[0m
  [38;2;248;248;242m@[0m[38;2;155;107;223mspec[0m [38;2;155;107;223mgreet[0m[38;2;248;248;242m([0m[38;2;117;215;236mString[0m[38;2;248;248;242m.[0m[38;2;155;107;223mt[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m[38;2;248;248;242m)[0m [38;2;248;248;242m::[0m [38;2;117;215;236mString[0m[38;2;248;248;242m.[0m[38;2;155;107;223mt[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m
  [38;2;230;71;71mdef[0m [38;2;155;107;223mgreet[0m[38;2;248;248;242m([0m[38;2;248;248;242mname[0m [38;2;248;248;242m\\[0m [38;2;248;248;242m@[0m[38;2;248;248;242mdefault_name[0m[38;2;248;248;242m)[0m [38;2;230;71;71mdo[0m
    [38;2;66;230;108m"Hello, [0m[38;2;248;248;242m#{[0m[38;2;248;248;242mname[0m[38;2;248;248;242m}[0m[38;2;66;230;108m!"[0m
  [38;2;230;71;71mend[0m

  [38;2;230;71;71mdef[0m [38;2;155;107;223mfib[0m[38;2;248;248;242m([0m[38;2;228;243;74m0[0m[38;2;248;248;242m)[0m[38;2;248;248;242m,[0m [38;2;80;250;123mdo: [0m[38;2;228;243;74m0[0m
  [38;2;230;71;71mdef[0m [38;2;155;107;223mfib[0m[38;2;248;248;242m([0m[38;2;228;243;74m1[0m[38;2;248;248;242m)[0m[38;2;248;248;242m,[0m [38;2;80;250;123mdo: [0m[38;2;228;243;74m1[0m
  [38;2;230;71;71mdef[0m [38;2;155;107;223mfib[0m[38;2;248;248;242m([0m[38;2;248;248;242mn[0m[38;2;248;248;242m)[0m [38;2;230;71;71mwhen[0m [38;2;155;107;223mis_integer[0m[38;2;248;248;242m([0m[38;2;248;248;242mn[0m[38;2;248;248;242m)[0m [38;2;230;71;71mand[0m [38;2;248;248;242mn[0m [38;2;248;248;242m>[0m [38;2;228;243;74m1[0m [38;2;230;71;71mdo[0m
    [38;2;155;107;223mfib[0m[38;2;248;248;242m([0m[38;2;248;248;242mn[0m [38;2;248;248;242m-[0m [38;2;228;243;74m1[0m[38;2;248;248;242m)[0m [38;2;248;248;242m+[0m [38;2;155;107;223mfib[0m[38;2;248;248;242m([0m[38;2;248;248;242mn[0m [38;2;248;248;242m-[0m [38;2;228;243;74m2[0m[38;2;248;248;242m)[0m
  [38;2;230;71;71mend[0m

  [38;2;230;71;71mdef[0m [38;2;155;107;223mrun[0m [38;2;230;71;71mdo[0m
    [38;2;248;248;242mnames[0m [38;2;248;248;242m=[0m [38;2;80;250;123m~[0m[38;2;248;248;242mw[0m[38;2;80;250;123m([0m[38;2;80;250;123mAlice Bob Carol[0m[38;2;80;250;123m)[0m

    [38;2;248;248;242mnames[0m
    [38;2;248;248;242m|>[0m [38;2;117;215;236mEnum[0m[38;2;248;248;242m.[0m[38;2;155;107;223mmap[0m[38;2;248;248;242m([0m[38;2;248;248;242m&[0m[38;2;248;248;242mgreet[0m[38;2;248;248;242m/[0m[38;2;228;243;74m1[0m[38;2;248;248;242m)[0m
    [38;2;248;248;242m|>[0m [38;2;117;215;236mEnum[0m[38;2;248;248;242m.[0m[38;2;155;107;223meach[0m[38;2;248;248;242m([0m[38;2;248;248;242m&[0m[38;2;117;215;236mIO[0m[38;2;248;248;242m.[0m[38;2;155;107;223mputs[0m[38;2;248;248;242m/[0m[38;2;228;243;74m1[0m[38;2;248;248;242m)[0m

    [38;2;248;248;242mconfig[0m [38;2;248;248;242m=[0m [38;2;248;248;242m%[0m[38;2;248;248;242m{[0m[38;2;80;250;123mretries: [0m[38;2;228;243;74m3[0m[38;2;248;248;242m,[0m [38;2;80;250;123mtimeout: [0m[38;2;228;243;74m5_000[0m[38;2;248;248;242m,[0m [38;2;80;250;123mtags: [0m[38;2;248;248;242m[[0m[38;2;80;250;123m:fast[0m[38;2;248;248;242m,[0m [38;2;80;250;123m:safe[0m[38;2;248;248;242m][0m[38;2;248;248;242m}[0m
    [38;2;117;215;236mIO[0m[38;2;248;248;242m.[0m[38;2;155;107;223minspect[0m[38;2;248;248;242m([0m[38;2;248;248;242mconfig[0m[38;2;248;248;242m,[0m [38;2;80;250;123mlabel: [0m[38;2;80;250;123m:config[0m[38;2;248;248;242m)[0m

    [38;2;230;71;71mfor[0m [38;2;248;248;242mn[0m [38;2;248;248;242m<-[0m [38;2;228;243;74m0[0m[38;2;248;248;242m..[0m[38;2;228;243;74m10[0m[38;2;248;248;242m,[0m [38;2;155;107;223mrem[0m[38;2;248;248;242m([0m[38;2;248;248;242mn[0m[38;2;248;248;242m,[0m [38;2;228;243;74m2[0m[38;2;248;248;242m)[0m [38;2;248;248;242m==[0m [38;2;228;243;74m0[0m[38;2;248;248;242m,[0m [38;2;80;250;123mdo: [0m[38;2;155;107;223mfib[0m[38;2;248;248;242m([0m[38;2;248;248;242mn[0m[38;2;248;248;242m)[0m
  [38;2;230;71;71mend[0m
[38;2;230;71;71mend[0m
