<commit_before>package main

import (
	"log"
	"os"
	"io/ioutil"
	"gopkg.in/yaml.v2"

	"github.com/go-chat-bot/bot/irc"
	"github.com/go-chat-bot/bot/slack"
	"github.com/go-chat-bot/bot/telegram"
	_ "github.com/go-chat-bot/plugins-br/cnpj"
	_ "github.com/go-chat-bot/plugins-br/cotacao"
	_ "github.com/go-chat-bot/plugins-br/cpf"
	_ "github.com/go-chat-bot/plugins-br/dilma"
	_ "github.com/go-chat-bot/plugins-br/lula"
	_ "github.com/go-chat-bot/plugins-br/megasena"
	_ "github.com/go-chat-bot/plugins/9gag"
	_ "github.com/go-chat-bot/plugins/catfacts"
	_ "github.com/go-chat-bot/plugins/catgif"
	_ "github.com/go-chat-bot/plugins/chucknorris"
	_ "github.com/go-chat-bot/plugins/crypto"
	_ "github.com/go-chat-bot/plugins/encoding"
	_ "github.com/go-chat-bot/plugins/example"
	_ "github.com/go-chat-bot/plugins/gif"
	_ "github.com/go-chat-bot/plugins/godoc"
	_ "github.com/go-chat-bot/plugins/guid"
	_ "github.com/go-chat-bot/plugins/puppet"
	_ "github.com/go-chat-bot/plugins/treta"
	_ "github.com/go-chat-bot/plugins/url"
)

type Config struct {
	Debug bool
	SlackToken string
	TelegramToken string
	IRC irc.Config
}

func main() {
	config := loadConfig()

	go irc.Run(config.IRC)
	go slack.Run(config.SlackToken)
	telegram.Run(config.TelegramToken, config.Debug)
}

func loadConfig() *Config {
	filename := os.Args[1]
	source, err := ioutil.ReadFile(filename)
    if err != nil {
        panic(err)
    }

    var config Config
    err = yaml.Unmarshal(source, &config)
    if err != nil {
        panic(err)
    }
    log.Printf("Configuration loaded: %v\n", config)

    return &config
}<commit_msg>Fix main file identation.<commit_after>package main

import (
	"log"
	"os"
	"io/ioutil"
	"gopkg.in/yaml.v2"

	"github.com/go-chat-bot/bot/irc"
	"github.com/go-chat-bot/bot/slack"
	"github.com/go-chat-bot/bot/telegram"
	_ "github.com/go-chat-bot/plugins-br/cnpj"
	_ "github.com/go-chat-bot/plugins-br/cotacao"
	_ "github.com/go-chat-bot/plugins-br/cpf"
	_ "github.com/go-chat-bot/plugins-br/dilma"
	_ "github.com/go-chat-bot/plugins-br/lula"
	_ "github.com/go-chat-bot/plugins-br/megasena"
	_ "github.com/go-chat-bot/plugins/9gag"
	_ "github.com/go-chat-bot/plugins/catfacts"
	_ "github.com/go-chat-bot/plugins/catgif"
	_ "github.com/go-chat-bot/plugins/chucknorris"
	_ "github.com/go-chat-bot/plugins/crypto"
	_ "github.com/go-chat-bot/plugins/encoding"
	_ "github.com/go-chat-bot/plugins/example"
	_ "github.com/go-chat-bot/plugins/gif"
	_ "github.com/go-chat-bot/plugins/godoc"
	_ "github.com/go-chat-bot/plugins/guid"
	_ "github.com/go-chat-bot/plugins/puppet"
	_ "github.com/go-chat-bot/plugins/treta"
	_ "github.com/go-chat-bot/plugins/url"
)

type Config struct {
	Debug bool
	SlackToken string
	TelegramToken string
	IRC irc.Config
}

func main() {
	config := loadConfig()

	go irc.Run(config.IRC)
	go slack.Run(config.SlackToken)
	telegram.Run(config.TelegramToken, config.Debug)
}

func loadConfig() *Config {
	filename := os.Args[1]
	source, err := ioutil.ReadFile(filename)
	if err != nil {
		panic(err)
	}

	var config Config
	err = yaml.Unmarshal(source, &config)
	if err != nil {
		panic(err)
	}
	log.Printf("Configuration loaded: %v\n", config)

	return &config
}
{'fraction_non_alphanumeric': 0.16886792452830188, 'fraction_numerical': 0.0018867924528301887, 'mean_word_length': 3.6034732272069463, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2151420', 'n_tokens_mistral': 1377, 'n_tokens_neox': 1351, 'n_words': 159}