System.out.println( "d" );
    synchronized void closeStatement ( PreparedStatement stmt )    {    	assert stmt != null;    	// Find the associated connection    	CacheConnection conn = (CacheConnection) statementMap.remove( stmt );    	if ( conn == null )    	{    		// unexpected error: stmt not created by us    		logger.logp( Level.WARNING, className, "closeStatement",    				"statement not found");    		// Fall through and call close() on stmt any way    	}    	else    	{    		-- conn.currentStatements;    		if ( conn.currentStatements < 0 )        		logger.warning( DataSource.class.getName() + ".closeStatement: negative statement count for connection.");    		    		// TODO: consider releasing connections here if we have more than 1 free connections    	}    	    	try		{    		stmt.close();		}        catch ( DataException e )        {    		logger.logp( Level.FINE, className, "closeStatement",    					"Exception at PreparedStatement.close()", e );        }    }