TODO: fix this 5yrs old mess