added richochet but needs fine tuning