tentative code
relocated function
merge
ignore logging working