activate object with children C#

i need help again, i wrote script which i want to activate one object and deactivate another so i wrote this and it didnt work.

using UnityEngine;
using System.Collections;

public class WeaponPick : MonoBehaviour {
public GameObject Gun;
public GameObject CurrentGun;
// Update is called once per frame
void Update ()
{
GameObject player = GameObject.FindGameObjectWithTag("Player");
if(Input.GetButtonDown("Use")&Vector3.Distance(transform.position, player.transform.position)<2)
{
Gun.SetActive(false);
CurrentGun.SetActive(true);
Destroy (gameObject);
}
}
}

the problem was i wrote True and False in vise verca :smiley: