Issue #2: partial port of old spredit project