wrote a pretty awful implementation that doesn't work.
added unit test.