sophuwu.site > bashprompt   
              90
            
             #!/usr/bin/python3
import sys
import os


def rain():
    r=[rg for rg in range(0, 5)]
    a=[[5-i%6+i%6, i%6,0] for i in r[:-1]]+[[i%6, 5-i%6+i%6,0] for i in r[::-1]]
    a=a+[i[::-1] for i in a][:-1][::-1]+[[i%6, 0, 5-i%6+i%6] for i in r[1:]]+[[5,0,j-1] for j in range(5,1,-1)]
    for i in range(len(a)):
        r,g,b=a[i]
        a[i]=36*r+6*g+b+16
    return a


def avg(arr): return sum(arr)//len(arr)


def box(i): return str("\033[48;5;"+str(i)+"m \033[0m")


def ax(b,f): return box(b).replace("m ",";38;5;"+str(f)+"m▄\033[0m")


def boxs(ip:list()):
	if len(ip) == 4: return ax(ip[0],ip[1])+ax(ip[2],ip[3])
	if len(ip) == 2: return ax(ip[0],ip[1])
	else: return ""


def rgb(ip):
	ip=[int(i) for i in ip]
	ip=[avg(ip[2:3]),0,ip[1],0,255-avg(ip[2:3]),ip[0]]
	ip=[str(i) for i in ip]
	s="\033[48;2;"
	s+=";".join(ip[:3])
	s+=";38;2;"
	s+=";".join(ip[3:])
	s+="m▄\033[0m"
	return s


def ip2rgb(ip):
	if type(ip)==type(""): ip=ip.split(".")
	if not (type(ip) is type([]) and len(ip) == 4): raise TypeError
	col=0
	if os.getenv("IPCOLOR")in["less","216","0","alt"]:col=16
	ip = [(int(i)*(216+col)//256)+(16-col) for i in ip]
	return ip


HXC=[rain()[i] for i in range(len(rain())) if int(i)%6<4]
HX="0123456789abcdef"
def hx(i: int):
	s=""
	while i>0:
		s=str(HX[i%16])+s
		i=i//16
	return s


def hexstr(instr:str): return hx(sum([[int(j) for j in instr.split(".")][::-1][i]<<8*i for i in range(4)]))
def hexc(instr:str):
	h=hexstr(instr)
	a=[]
	for i in h:
		a+=[HXC[HX.index(i)]]
	return a

if os.getenv("IPADDR") is not None:
	try:
		arg=os.getenv("IPADDR")
		ip=ip2rgb(arg)
		o=boxs(ip)
		print(o)
		exit(0)
	except:
		exit(1)
	finally:
		exit(2)


for arg in sys.argv:
	try:
		ip = ip2rgb(arg)
		i=[int(j) for j in arg.split(".")]
		print(rgb(i)+str(arg).rjust(15)+" "+boxs(ip))
	except TypeError:
		continue