public static function main($argv, ContainerInterface $container = null)
    {
        $output = self::cyanLine($argv);

        $app = new Application('');
        $app->add(new MigrateMakeCommand());
        $app->add(new MigrateUpCommand($container));
        $app->add(new MigrateDownCommand());
        $app->add(new MigrateResetCommand());
        $app->add(new MigrateStatusCommand());
        $app->add(new MigrateRefreshCommand());
        $app->add(new MigrateFreshCommand($container));
        $app->add(new MigrateDropCommand());
        $app->add(new SeedRunCommand($container));
        $app->add(new SeedMakeCommand());
        $app->add(new BinMakeCommand());

        $app->run(null, $output);
    }