particles fully implemented