Trying this variant. For some reason doesn't compile on CI.