flowkater socket source
merge conflict