Refactored save knowledge