I've been bit by the refactoring bug...