hacky but worky