PUSH CALLBACK APPROACH : https://docs.google.com/document/d/1BUo-pLH-nEq4XJrpNv7Tkb5P-KOlRA3Df05ehGTMe2g/edit