continue to implement spi