##################################
#                                #
# Last modified 2023/08/03       # 
#                                #
# Georgi Marinov                 #
#                                # 
##################################

import sys
import string
import math
import gzip
import numpy as np

def run():

    if len(sys.argv) < 3:
        print 'usage: python %s input.wig radius output.wig' % sys.argv[0]
        sys.exit(1)

    input = sys.argv[1]
    R = int(sys.argv[2])
    outfilename = sys.argv[3]

    outfile = open(outfilename,'w')

    linelist = open(input)
    for line in linelist:
        if line.startswith('#'):
            continue
        fields = line.strip().split('\t')
        chr = fields[0]
        left = int(fields[1])
        right = int(fields[2])
        score = fields[3]
        outline = chr.upper() + '\t' + str(left-R) + '\t' + str(left+R) + '\t' + score
        outfile.write(outline + '\n')

    outfile.close()
   
run()
