First implementation. Needs cleanup.

No match.