Implementing ideas based on nj's feedback