Theoretically? fix the self-source problem. No way to test ATM