failed attempt at promotion impl