def extract(mpq, build, extract_to):
	for path in EXTRACT:
		if path not in mpq:
			print("Skipping %r (not found)" % (path))
			continue
		data = mpq.open(path).read()
		extract_path = os.path.join(extract_to, str(build), path)
		dirname = os.path.dirname(extract_path)
		if not os.path.exists(dirname):
			os.makedirs(dirname)
		print("Writing to %r" % (extract_path))

		with open(extract_path, "wb") as f:
			f.write(data)
	def _extract(path):
		if path not in mpq:
			# print("Skipping %r (not found)" % (path))
			return
		data = mpq.open(path).read()
		if not data:
			print("Skipping %r (empty)" % (path))
			return
		extract_path = os.path.join(extract_to, str(build), path)
		dirname = os.path.dirname(extract_path)
		if not os.path.exists(dirname):
			os.makedirs(dirname)
		print("Writing to %r" % (extract_path))

		with open(extract_path, "wb") as f:
			f.write(data)