Though pretty well written it does have some holes.