rewrite on top of highland