first sprite implementation