A group $H$ is called a retract of a group $G$ if there exist homomorphisms $f:H\longrightarrow G$ and $g:G\longrightarrow H$ such that $g\circ f=id_H$. By a trivial retract of $G$, I just mean the trivial group and $G$ itslef.
My question is that:
Is there a group admitting non-trivial retracts, and which is a retract of all its non-trivial retracts"?
Thanks in advance.