First pass...code compiles...still not sure if it works.