function bid(uint256 _tokenId)
        external
        payable
    {
        Auction memory auction = tokenIdToAuction[_tokenId];
        address seller = auction.seller;
        _bid(_tokenId, msg.value);
        _transfer(msg.sender, _tokenId);
        seller.transfer(msg.value);
    }