NotImplementedException refactor