[38;2;98;114;164m# A single line comment.[0m

[38;2;255;85;85mdefmodule[0m [38;2;139;233;253mGreeter[0m [38;2;255;85;85mdo[0m
  [38;2;98;114;164m@[0m[38;2;189;147;249mmoduledoc[0m [38;2;80;250;123m"""
  Greets people and computes Fibonacci numbers.
  """[0m

  [38;2;248;248;242m@[0m[38;2;189;147;249mdefault_name[0m [38;2;80;250;123m"world"[0m

  [38;2;98;114;164m@[0m[38;2;189;147;249mdoc[0m [38;2;80;250;123m"Return a greeting for `name`."[0m
  [38;2;248;248;242m@[0m[38;2;189;147;249mspec[0m [38;2;189;147;249mgreet[0m[38;2;248;248;242m([0m[38;2;139;233;253mString[0m[38;2;248;248;242m.[0m[38;2;189;147;249mt[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;139;233;253mString[0m[38;2;248;248;242m.[0m[38;2;189;147;249mt[0m[38;2;248;248;242m([0m[38;2;248;248;242m)[0m
  [38;2;255;85;85mdef[0m [38;2;189;147;249mgreet[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;255;85;85mdo[0m
    [38;2;80;250;123m"Hello, [0m[38;2;248;248;242m#{[0m[38;2;248;248;242mname[0m[38;2;248;248;242m}[0m[38;2;80;250;123m!"[0m
  [38;2;255;85;85mend[0m

  [38;2;255;85;85mdef[0m [38;2;189;147;249mfib[0m[38;2;248;248;242m([0m[38;2;241;250;140m0[0m[38;2;248;248;242m)[0m[38;2;248;248;242m,[0m [38;2;105;255;148mdo: [0m[38;2;241;250;140m0[0m
  [38;2;255;85;85mdef[0m [38;2;189;147;249mfib[0m[38;2;248;248;242m([0m[38;2;241;250;140m1[0m[38;2;248;248;242m)[0m[38;2;248;248;242m,[0m [38;2;105;255;148mdo: [0m[38;2;241;250;140m1[0m
  [38;2;255;85;85mdef[0m [38;2;189;147;249mfib[0m[38;2;248;248;242m([0m[38;2;248;248;242mn[0m[38;2;248;248;242m)[0m [38;2;255;85;85mwhen[0m [38;2;189;147;249mis_integer[0m[38;2;248;248;242m([0m[38;2;248;248;242mn[0m[38;2;248;248;242m)[0m [38;2;255;85;85mand[0m [38;2;248;248;242mn[0m [38;2;248;248;242m>[0m [38;2;241;250;140m1[0m [38;2;255;85;85mdo[0m
    [38;2;189;147;249mfib[0m[38;2;248;248;242m([0m[38;2;248;248;242mn[0m [38;2;248;248;242m-[0m [38;2;241;250;140m1[0m[38;2;248;248;242m)[0m [38;2;248;248;242m+[0m [38;2;189;147;249mfib[0m[38;2;248;248;242m([0m[38;2;248;248;242mn[0m [38;2;248;248;242m-[0m [38;2;241;250;140m2[0m[38;2;248;248;242m)[0m
  [38;2;255;85;85mend[0m

  [38;2;255;85;85mdef[0m [38;2;189;147;249mrun[0m [38;2;255;85;85mdo[0m
    [38;2;248;248;242mnames[0m [38;2;248;248;242m=[0m [38;2;105;255;148m~[0m[38;2;248;248;242mw[0m[38;2;105;255;148m([0m[38;2;105;255;148mAlice Bob Carol[0m[38;2;105;255;148m)[0m

    [38;2;248;248;242mnames[0m
    [38;2;248;248;242m|>[0m [38;2;139;233;253mEnum[0m[38;2;248;248;242m.[0m[38;2;189;147;249mmap[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;241;250;140m1[0m[38;2;248;248;242m)[0m
    [38;2;248;248;242m|>[0m [38;2;139;233;253mEnum[0m[38;2;248;248;242m.[0m[38;2;189;147;249meach[0m[38;2;248;248;242m([0m[38;2;248;248;242m&[0m[38;2;139;233;253mIO[0m[38;2;248;248;242m.[0m[38;2;189;147;249mputs[0m[38;2;248;248;242m/[0m[38;2;241;250;140m1[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;105;255;148mretries: [0m[38;2;241;250;140m3[0m[38;2;248;248;242m,[0m [38;2;105;255;148mtimeout: [0m[38;2;241;250;140m5_000[0m[38;2;248;248;242m,[0m [38;2;105;255;148mtags: [0m[38;2;248;248;242m[[0m[38;2;105;255;148m:fast[0m[38;2;248;248;242m,[0m [38;2;105;255;148m:safe[0m[38;2;248;248;242m][0m[38;2;248;248;242m}[0m
    [38;2;139;233;253mIO[0m[38;2;248;248;242m.[0m[38;2;189;147;249minspect[0m[38;2;248;248;242m([0m[38;2;248;248;242mconfig[0m[38;2;248;248;242m,[0m [38;2;105;255;148mlabel: [0m[38;2;105;255;148m:config[0m[38;2;248;248;242m)[0m

    [38;2;255;85;85mfor[0m [38;2;248;248;242mn[0m [38;2;248;248;242m<-[0m [38;2;241;250;140m0[0m[38;2;248;248;242m..[0m[38;2;241;250;140m10[0m[38;2;248;248;242m,[0m [38;2;189;147;249mrem[0m[38;2;248;248;242m([0m[38;2;248;248;242mn[0m[38;2;248;248;242m,[0m [38;2;241;250;140m2[0m[38;2;248;248;242m)[0m [38;2;248;248;242m==[0m [38;2;241;250;140m0[0m[38;2;248;248;242m,[0m [38;2;105;255;148mdo: [0m[38;2;189;147;249mfib[0m[38;2;248;248;242m([0m[38;2;248;248;242mn[0m[38;2;248;248;242m)[0m
  [38;2;255;85;85mend[0m
[38;2;255;85;85mend[0m
