Squashed 'hadrian/' changes from 438dc576e7..5ebb69ae1e