refactor HAHHAHA
refactor