Extract SPT construction (simplifies usage)

Potentially improves perf as well