before installing security package
Still needs lots of refactoring and cleanup, small tweaks, etc.. but it's fully functional.