developing ,not finished yet