I want contract2 to be able to transfer the tokens from contract1.
So i set allowance to -1
If i understand correctly it's not "infinite", but it's the highest possible number in EVM.
My question is... Do i need to create a function inside the contract that will reset the allowance back to -1? As users interact with the contract, could they drain the allowance to 0 and render the contract useless?