implemented valueLearned methods, lock/unlock funcs