Public defender slams San Francisco cops for firing at man with fake gun