based on git revision fa35ba97a9a8c0535b32c17e586f673dd93c6ab6.
