added why spark