Copyright (C) 2000-2012 Jason Hunter & Brett McLaughlin.