implement #60. improve #23. change note-behavior.