please add more docs why we do this