<commit_before>package main

import (
	"./lib/apache"
	"./lib/tenbin"
	"fmt"
	"strconv"
)

func main() {
	var hypervisor tenbin.Hypervisor
	apache.Timeout = 1

	for i := 1; i < 10; i++ {
		num := strconv.Itoa(i)
		hypervisor.AddVM("web-server-"+num, "192.168.11.2"+num)
	}

	fmt.Printf("%+v\n", hypervisor)
	fmt.Printf("%+v\n", hypervisor.AVGOR())
}<commit_msg>Ctrl-Cの処理を追加<commit_after>package main

import (
	"./lib/apache"
	"./lib/tenbin"
	"log"
	"os"
	"os/signal"
	"strconv"
	"time"
)

func main() {
	var hypervisor tenbin.Hypervisor
	apache.Timeout = 1
	sig := make(chan os.Signal, 1)
	signal.Notify(sig, os.Interrupt)

	go func() {
		for range sig {
			os.Exit(0)
		}
	}()

	for i := 1; i < 10; i++ {
		num := strconv.Itoa(i)
		hypervisor.AddVM("web-server-"+num, "192.168.11.2"+num)
	}

	for {
		log.Printf("%+v\n", hypervisor.AVGOR())
		time.Sleep(time.Second)
	}
}
{'fraction_non_alphanumeric': 0.20504009163802978, 'fraction_numerical': 0.032073310423825885, 'mean_word_length': 3.414141414141414, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 2, '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': '5458659', 'n_tokens_mistral': 433, 'n_tokens_neox': 399, 'n_words': 71}