added addfirst funct