Co-authored-by: silverwind <me@silverwind.io> (cherry picked from commit e01b0014de5b732181ac42c03a77c21219f88c6a)