Initial revision.

Did not check whether it "compiles".