this is ugly but it works and it's all in one place