added checkall func not done tho