spike impl