cache as single script