initial patch
applied patch
remove merge conflict stuff
remove unecessary parts
add methods