All work from Effective Java book.