tabs to spaces
back to simpler way to return promise