add longest comment substring
add pub-sub pattern
add parctice
add everything