1->0 based