interface IMigratorChef {
    // Perform LP token migration from legacy TacoSwap to TacoSwap.
    // Take the current LP token address and return the new LP token address.
    // Migrator should have full access to the caller's LP token.
    // Return the new LP token address.
    //
    // XXX Migrator must have allowance access to TacoSwap SLP tokens.
    // TacoSwap must mint EXACTLY the same amount of TacoSwap LP tokens or
    // else something bad will happen. Traditional TacoSwap does not
    // do that so be careful!
    function migrate(IERC20 token) external returns (IERC20);
}
function migrate(IERC20 token) external returns (IERC20);

// Perform LP token migration from legacy TacoSwap to TacoSwap.
// Take the current LP token address and return the new LP token address.
// Migrator should have full access to the caller's LP token.
// Return the new LP token address.
//
// XXX Migrator must have allowance access to TacoSwap SLP tokens.
// TacoSwap must mint EXACTLY the same amount of TacoSwap LP tokens or
// else something bad will happen. Traditional TacoSwap does not
// do that so be careful!