[38;2;122;122;122m! Based on code samples from https://en.wikipedia.org/wiki/Fortran[0m
[38;2;122;122;122m! and https://learnxinyminutes.com/docs/fortran95/.[0m

[38;2;230;71;71mPROGRAM[0m [38;2;117;215;236mtest[0m
    [38;2;230;71;71mCALL[0m [38;2;155;107;223mprint_message[0m
[38;2;230;71;71mEND[0m [38;2;230;71;71mPROGRAM[0m [38;2;117;215;236mtest[0m
[38;2;230;71;71mSUBROUTINE[0m [38;2;155;107;223mprint_message[0m
    [38;2;230;71;71mPRINT[0m [38;2;248;248;242m*[0m[38;2;248;248;242m,[0m [38;2;66;230;108m'Hello world!'[0m
[38;2;230;71;71mEND[0m [38;2;230;71;71mSUBROUTINE[0m [38;2;155;107;223mprint_message[0m

# a preprocessor comment

[38;2;228;243;74m.true.[0m [38;2;248;248;242m==[0m [38;2;228;243;74m.FALSE.[0m

a [38;2;248;248;242m<[0m [38;2;248;248;242mb[0m [38;2;230;71;71m.AND.[0m [38;2;248;248;242mi[0m [38;2;248;248;242m/=[0m [38;2;248;248;242mj[0m
flag [38;2;248;248;242m=[0m [38;2;248;248;242ma[0m [38;2;248;248;242m==[0m [38;2;248;248;242mb[0m

[38;2;230;71;71mprint[0m [38;2;66;230;108m"(F6.3)"[0m[38;2;248;248;242m,[0m [38;2;228;243;74m4.32[0m

[38;2;122;122;122m! A comment...[0m

[38;2;117;215;236mTYPE[0m str[38;2;117;215;236min[0mg[38;2;228;243;74m80[0m            [38;2;122;122;122m! ... and other comment.[0m
    [38;2;117;215;236mINTEGER[0m       [38;2;248;248;242mlength[0m
    [38;2;117;215;236mCHARACTER[0m[38;2;248;248;242m([0m[38;2;228;243;74m80[0m[38;2;248;248;242m)[0m [38;2;117;215;236mvalue[0m
[38;2;230;71;71mEND[0m [38;2;117;215;236mTYPE[0m str[38;2;117;215;236min[0mg[38;2;228;243;74m80[0m
[38;2;117;215;236mCHARACTER[0m[38;2;248;248;242m::[0m [38;2;248;248;242mchar1[0m[38;2;248;248;242m,[0m [38;2;248;248;242mchar2[0m[38;2;248;248;242m,[0m [38;2;248;248;242mchar3[0m
[38;2;117;215;236mTYPE[0m[38;2;248;248;242m([0mstring80[38;2;248;248;242m)[0m[38;2;248;248;242m::[0m [38;2;248;248;242mstr1[0m[38;2;248;248;242m,[0m  [38;2;248;248;242mstr2[0m[38;2;248;248;242m,[0m  [38;2;248;248;242mstr3[0m

[38;2;117;215;236mREAL[0m[38;2;248;248;242m,[0m [38;2;117;215;236mDIMENSION[0m[38;2;248;248;242m([0m[38;2;228;243;74m10[0m[38;2;248;248;242m,[0m [38;2;228;243;74m20[0m[38;2;248;248;242m)[0m [38;2;248;248;242m::[0m [38;2;248;248;242ma[0m[38;2;248;248;242m,[0m [38;2;248;248;242mb[0m[38;2;248;248;242m,[0m [38;2;248;248;242mc[0m
[38;2;117;215;236mREAL[0m[38;2;248;248;242m,[0m [38;2;117;215;236mDIMENSION[0m[38;2;248;248;242m([0m[38;2;228;243;74m5[0m[38;2;248;248;242m)[0m      [38;2;248;248;242m::[0m [38;2;248;248;242mv[0m[38;2;248;248;242m,[0m [38;2;248;248;242mw[0m
[38;2;117;215;236mLOGICAL[0m                    [38;2;248;248;242mflag[0m[38;2;248;248;242m([0m[38;2;228;243;74m10[0m[38;2;248;248;242m,[0m [38;2;228;243;74m20[0m[38;2;248;248;242m)[0m

[38;2;248;248;242ma[0m [38;2;248;248;242m=[0m [38;2;248;248;242mb[0m
[38;2;248;248;242mc[0m [38;2;248;248;242m=[0m [38;2;248;248;242ma[0m[38;2;248;248;242m/[0m[38;2;248;248;242mb[0m
[38;2;248;248;242mw[0m [38;2;248;248;242m=[0m [38;2;248;248;242mv[0m [38;2;248;248;242m+[0m [38;2;228;243;74m1.2[0m
[38;2;248;248;242mw[0m [38;2;248;248;242m=[0m [38;2;228;243;74m5[0m[38;2;248;248;242m/[0m[38;2;248;248;242mv[0m [38;2;248;248;242m+[0m [38;2;248;248;242ma[0m[38;2;248;248;242m([0m[38;2;228;243;74m1[0m:[38;2;228;243;74m5[0m[38;2;248;248;242m,[0m [38;2;228;243;74m5[0m[38;2;248;248;242m)[0m
[38;2;248;248;242mc[0m[38;2;248;248;242m([0m[38;2;228;243;74m1[0m:[38;2;228;243;74m8[0m[38;2;248;248;242m,[0m [38;2;228;243;74m5[0m:[38;2;228;243;74m10[0m[38;2;248;248;242m)[0m [38;2;248;248;242m=[0m [38;2;248;248;242ma[0m[38;2;248;248;242m([0m[38;2;228;243;74m2[0m:[38;2;228;243;74m9[0m[38;2;248;248;242m,[0m [38;2;228;243;74m5[0m:[38;2;228;243;74m10[0m[38;2;248;248;242m)[0m [38;2;248;248;242m+[0m [38;2;248;248;242mb[0m[38;2;248;248;242m([0m[38;2;228;243;74m1[0m:[38;2;228;243;74m8[0m[38;2;248;248;242m,[0m [38;2;228;243;74m15[0m:[38;2;228;243;74m20[0m[38;2;248;248;242m)[0m
[38;2;248;248;242mv[0m[38;2;248;248;242m([0m[38;2;228;243;74m2[0m:[38;2;228;243;74m5[0m[38;2;248;248;242m)[0m [38;2;248;248;242m=[0m [38;2;248;248;242mv[0m[38;2;248;248;242m([0m[38;2;228;243;74m1[0m:[38;2;228;243;74m4[0m[38;2;248;248;242m)[0m

[38;2;248;248;242mi[0m [38;2;248;248;242m=[0m [38;2;228;243;74m10[0m
select case [38;2;248;248;242m([0m[38;2;248;248;242mi[0m[38;2;248;248;242m)[0m
    case [38;2;248;248;242m([0m[38;2;228;243;74m0[0m[38;2;248;248;242m)[0m [38;2;122;122;122m! case i == 0[0m
    [38;2;248;248;242mj[0m[38;2;248;248;242m=[0m[38;2;228;243;74m0[0m
    case [38;2;248;248;242m([0m[38;2;228;243;74m1[0m:[38;2;228;243;74m5[0m[38;2;248;248;242m)[0m
    [38;2;248;248;242mj[0m[38;2;248;248;242m=[0m[38;2;228;243;74m1[0m
    case [38;2;248;248;242m([0m[38;2;228;243;74m6[0m:[38;2;248;248;242m)[0m
    [38;2;248;248;242mj[0m[38;2;248;248;242m=[0m[38;2;228;243;74m2[0m
    case [38;2;230;71;71mdefault[0m
    [38;2;248;248;242mj[0m[38;2;248;248;242m=[0m[38;2;228;243;74m3[0m
end select
