upstream: 5903faa96e872e304d9c90b7c7bc98c3512fca99
