#!/usr/bin/env python

import sys
import os
import signal
import csv
import binascii


def someencode(infilename, strfilename, outfilename):
  with open(infilename, 'r') as infile:
    infilestr=infile.read()
  with open(strfilename, 'r') as strfile:
    strfilestr=strfile.read().strip()

  bitstrstr = "".join(["{0:08b}".format(ord(i)) for i in strfilestr ])

#  print (infilestr)
  print (bitstrstr)

  retstr = ""
  bit = 0

  for c in infilestr:
    if bit >= len(bitstrstr):
      retstr = retstr + c
    elif c not in "abcdefghinjklmnopqrstuvwxyz":
      retstr = retstr + c
    elif bitstrstr[bit] == "1":
      retstr = retstr + chr(ord(c)-32)
      bit += 1
    else:
      retstr = retstr + c
      bit += 1

  if bit < len(bitstrstr):
    print("SOME PAYLOAD NOT ENCODED!")
  open(outfilename, 'w').write(retstr)


if __name__ == "__main__":
	def signal_handler(signal, frame):
		print('SIG received. exitting!')
		sys.exit(0)
	signal.signal(signal.SIGINT, signal_handler)

	someencode("in.txt", "str.txt", "out.txt")

