initial implementation of readsp3