backporting everything for ic2 289 -.-