Initial version forked from Google Guava commit 1c5554dedb0924689285a34489ec1d6b57d076e9
https://code.google.com/p/guava-libraries/source/detail?r=1c5554dedb0924689285a34489ec1d6b57d076e9