adapted todo