Reinventing banking through software composability