I recently came accross an ICO that used temp wallets. The tokens were sent to the investors manually which means that not everyone received their tokens at the same time. Until everyone received their tokens, they were locked for transfers. However the owner was able to transfer the tokens to the investors. For learning purposes I tried to reproduce this logic and I was wondering if my attempt could actually be used in terms of efficiency and security. The transferFrom function has the same logic.