Whenever a witness refuses, on the basis of his privilege against self-incrimination, to testify or provide other information in a proceeding before a court or grand jury of the United States, involving a violation of this subchapter, and the person presiding over the proceeding communicates to the witness an order issued under this section, the witness may not refuse to comply with the order on the basis of his privilege against self-incrimination. But no testimony or other information compelled under the order issued under subsection (b) of this section or any information obtained by the exploitation of such testimony or other information, may be used against the witness in any criminal case, including any criminal case brought in a court of a State, except a prosecution for perjury, giving a false statement, or otherwise failing to comply with the order.
In the case of any individual who has been or may be called to testify or provide other information at any proceeding before a court or grand jury of the United States, the United States district court for the judicial district in which the proceeding is or may be held shall issue, upon the request of the United States attorney for such district, an order requiring such individual to give any testimony or provide any other information which he refuses to give or provide on the basis of his privilege against self-incrimination.