This should be moved in generic I guess.