unit – the snail makes a strange behavior when the player pushes it

I have a problem when I push the snail when it is stunned and, at the same time, when the player moves towards the snail, the snail has a strange behavior.

Could you help me solve this problem or just tell me where is the problem to solve it because I can not see what happens?

RaycastHit2D leftHit = Physics2D.Raycast (left_Collision_Position, Vector2.left, 0.2f, PlayerLayer);
RaycastHit2D rightHit = Physics2D.Raycast (right_Collision_Position, Vector2.right, 0.2f, PlayerLayer);
Collider2D Tophit = Physics2D.OverlapCircle (top_Collision.position, 0.2f, PlayerLayer);

yes (leftHit)
{

if (leftHit.collider.gameObject.tag == MyTags.PLAYER_TAG)
{

yes (stunned)
{
// Damage the player
leftHit.collider.gameObject.GetComponent() .Inflict damage ();
}
plus
{
if (gameObject.tag == MyTags.SNAIL_TAG)
{
myBody.velocity = new Vector2 (15f, myBody.velocity.y);
}
}
}
}
yes (rightHit)
{
if (rightHit.collider.gameObject.tag == MyTags.PLAYER_TAG)
{
yes (stunned)
{
// Damage the player
rightHit.collider.gameObject.GetComponent() .Inflict damage ();
}
plus
{
if (gameObject.tag == MyTags.SNAIL_TAG)
{
myBody.velocity = new Vector2 (-15f, myBody.velocity.y);
}
}
}

}

I uploaded the video on YouTube explaining the strange behavior of the snail: Here

the strange behavior is when the player kills the snail and moves towards the snail, the snail moves back to the player

The project here