optional guava
merge effective java chapter 06