some attempt of sift