rewritten *=

it's slow as hell :(