  We consider a generalization of finding a homomorphism from an input digraph
$G$ to a fixed digraph $H$, HOM($H$). In this setting, we are given an input
digraph $G$ together with a list function from $G$ to $2^H$. The goal is to
find a homomorphism from $G$ to $H$ with respect to the lists if one exists.
  We show that if the list function is a Maltsev polymorphism then deciding
whether $G$ admits a homomorphism to $H$ is polynomial time solvable. In our
approach, we only use the existence of the Maltsev polymorphism. Furthermore,
we show that deciding whether a relational structure $\mathcal{R}$ admits a
Maltsev polymorphism is a special case of finding a homormphism from a graph
$G$ to a graph $H$ and a list function with a Maltsev polymorphism. Since the
existence of Maltsev is not required in our algorithm, we can decide in
polynomial time whether the relational structure $\mathcal{R}$ admits Maltsev
or not.
  We also discuss forbidden obstructions for the instances admitting Maltsev
list polymorphism. We have implemented our algorithm and tested on instances
arising from linear equations, and other types of instances.
