make into proper module