function makeSwap (address _address , uint _value , bytes32 _hash) public isAuthorized isNotPaused {

    ERC223 newTok = ERC223 ( newTokenAdd );

	

    uint gpxtosend = mul( _value , Tokenrate ); 

     

    if ( payments[_hash] > 0 ) { 
        GXVCReplay( 3, _address ); 
        return;
     }

     if ( gpxtosend == 0 ) {
        GXVCNoToken( 4, _address ); 
        return;
     }
      
              
     TokensReceived( 5, _address , _value ); 

     payments[_hash] = gpxtosend; 

      
     require( newTok.transferFrom( tokenSpender , _address , gpxtosend ) );

     GXVCSentByToken( 6, _address , gpxtosend ); 

     lastBlock = block.number + 1;

    }