<commit_before>var fs = require('fs');
var path = require('path');
var cProduct = require('cartesian-product');

require('./Pokemon-Showdown');
var utils = require('./utils.js');
var parseTeams = require('./parser.js');

var toId = global.toId;
var Tools = global.Tools.includeData();
var Pokedex = Tools.data.Pokedex;
var Movedex = Tools.data.Movedex;
var Items = Tools.data.Items;
var Natures = Tools.data.Natures;

var factoryTiers = ['Uber', 'OU', 'UU', 'RU', 'NU'];
var uniqueOptionMoves = utils.toDict(['stealthrock', 'spikes', 'toxicspikes', 'rapidspin', 'defog', 'batonpass']); // High-impact moves

function proofRead (setLists, strict) {
	var errors = [];
	var sets = {};

	for (var tier in setLists) {
		var minTierIndex = utils.getTierIndex(tier);

		for (var speciesid in setLists[tier]) {
			if (!Pokedex.hasOwnProperty(speciesid)) {
				errors.push("Invalid species id: " + speciesid);
				continue;
			}<commit_msg>Do not listen for PS server connections<commit_after>var fs = require('fs');
var path = require('path');
var cProduct = require('cartesian-product');

(function () {
	var psConfig;
	try {
		psConfig = require('./Pokemon-Showdown/config/config.js');
	} catch (err) {
		if (err.code !== 'MODULE_NOT_FOUND') throw err;

		console.log("config.js doesn't exist - creating one with default settings...");
		fs.writeFileSync(path.resolve(__dirname, 'Pokemon-Showdown', 'config/config.js'),
			fs.readFileSync(path.resolve(__dirname, 'Pokemon-Showdown', 'config/config-example.js'))
		);
		psConfig = require('./Pokemon-Showdown/config/config.js');
	}

	psConfig.workers = 0;
})();

require('./Pokemon-Showdown');
var utils = require('./utils.js');
var parseTeams = require('./parser.js');

var toId = global.toId;
var Tools = global.Tools.includeData();
var Pokedex = Tools.data.Pokedex;
var Movedex = Tools.data.Movedex;
var Items = Tools.data.Items;
var Natures = Tools.data.Natures;

var factoryTiers = ['Uber', 'OU', 'UU', 'RU', 'NU'];
var uniqueOptionMoves = utils.toDict(['stealthrock', 'spikes', 'toxicspikes', 'rapidspin', 'defog', 'batonpass']); // High-impact moves

function proofRead (setLists, strict) {
	var errors = [];
	var sets = {};

	for (var tier in setLists) {
		var minTierIndex = utils.getTierIndex(tier);

		for (var speciesid in setLists[tier]) {
			if (!Pokedex.hasOwnProperty(speciesid)) {
				errors.push("Invalid species id: " + speciesid);
				continue;
			}
{'fraction_non_alphanumeric': 0.17288557213930347, 'fraction_numerical': 0.00041459369817578774, 'mean_word_length': 4.704491725768322, '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': '2570559', 'n_tokens_mistral': 872, 'n_tokens_neox': 816, 'n_words': 195}