prepared a functional variant