raw impl