﻿<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hans-CN">
	<id>https://www.smartlegalcontract.cn/mediawiki/index.php?action=history&amp;feed=atom&amp;title=ExampleofAuctionContract</id>
	<title>ExampleofAuctionContract - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://www.smartlegalcontract.cn/mediawiki/index.php?action=history&amp;feed=atom&amp;title=ExampleofAuctionContract"/>
	<link rel="alternate" type="text/html" href="https://www.smartlegalcontract.cn/mediawiki/index.php?title=ExampleofAuctionContract&amp;action=history"/>
	<updated>2026-05-13T10:56:49Z</updated>
	<subtitle>本wiki的该页面的版本历史</subtitle>
	<generator>MediaWiki 1.35.0</generator>
	<entry>
		<id>https://www.smartlegalcontract.cn/mediawiki/index.php?title=ExampleofAuctionContract&amp;diff=514&amp;oldid=prev</id>
		<title>20201027：/*  Auction contract   */</title>
		<link rel="alternate" type="text/html" href="https://www.smartlegalcontract.cn/mediawiki/index.php?title=ExampleofAuctionContract&amp;diff=514&amp;oldid=prev"/>
		<updated>2021-09-12T07:51:16Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Auction contract&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;zh-Hans-CN&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←上一版本&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2021年9月12日 (日) 07:51的版本&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l4&quot; &gt;第4行：&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;第4行：&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;||&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Auction contract involves two parties: auctioneer who is an enterprise legal person engaged in auction activities, and bidders who are some citizens, legal persons or organizations to participate in bidding for auction targets. The highest bidding process is described as the following steps. The auctioneer starts the auction system after setting a reserve price and an auction end time, and waits for the auction to end; The bidders can bid anytime during the system. If the bid is greater than the current highest price, the system records it as new highest price, puts the bid into the fund pool, and returns the bid paid by the previous highest bidder; otherwise, the bidder fails and the bid is returned; After the auction time is over, the auctioneer can collect the highest bid from the fund pool.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;||&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Auction contract involves two parties: auctioneer who is an enterprise legal person engaged in auction activities, and bidders who are some citizens, legal persons or organizations to participate in bidding for auction targets. The highest bidding process is described as the following steps. The auctioneer starts the auction system after setting a reserve price and an auction end time, and waits for the auction to end; The bidders can bid anytime during the system. If the bid is greater than the current highest price, the system records it as new highest price, puts the bid into the fund pool, and returns the bid paid by the previous highest bidder; otherwise, the bidder fails and the bid is returned; After the auction time is over, the auctioneer can collect the highest bid from the fund pool.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;'''&amp;lt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;syntaxhighlight lang=&amp;quot;spec&amp;quot; line&lt;/del&gt;=&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;quot;1&amp;quot;&lt;/del&gt;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;----&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;// Simple Auction.scs&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;'''&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;contract SimpleAuction{&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;font color&lt;/ins&gt;=&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;green&lt;/ins&gt;&amp;gt;// Simple Auction.scs&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;	&lt;/del&gt;party group bidders{&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;contract&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;SimpleAuction{&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;amount : Money&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;party&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;group bidders{&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;Bid()&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&lt;/ins&gt;amount : Money&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;withdrawOverbidMoney()&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&lt;/ins&gt;Bid()&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;	&lt;/del&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&lt;/ins&gt;withdrawOverbidMoney()&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;	&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:&lt;/ins&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;	&lt;/del&gt;party auctioneer{&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;	&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;StartBidding(reservePrice : Money, biddingTime : Date)&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;party&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;auctioneer{&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;StopBidding()&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&lt;/ins&gt;StartBidding(reservePrice : Money, biddingTime : Date)&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;	&lt;/del&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&lt;/ins&gt;StopBidding()&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:&lt;/ins&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;	&lt;/del&gt;highestPrice : Money&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;	&lt;/del&gt;highestBidder : biddersBiddingStop&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:&lt;/ins&gt;highestPrice : Money&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;	&lt;/del&gt;Time : Date&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:&lt;/ins&gt;highestBidder : biddersBiddingStop&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;	&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:&lt;/ins&gt;Time : Date&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;	&lt;/del&gt;term no1 : auctioneer can StartBidding,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;when before auctioneer did StartBidding&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;term&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;no1 : auctioneer &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;can&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;StartBidding,&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;where highestPrice = reservePrice and BiddingStopTime = biddingTime + now.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;when&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &amp;lt;font color=blue&amp;gt;&lt;/ins&gt;before&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;auctioneer &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;did&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;StartBidding&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&lt;/ins&gt;where highestPrice = reservePrice &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;and&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;BiddingStopTime = biddingTime + now.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;	&lt;/del&gt;term no2 : bidders can Bid,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;		&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;when after auctioneer did StartBidding and before BiddingStopTime&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;term&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;no2 : bidders &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;can&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;Bid,&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;while deposit $ value &amp;gt; highestPrice&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;when&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &amp;lt;font color=blue&amp;gt;&lt;/ins&gt;after&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;auctioneer &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;did&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;StartBidding &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;and&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &amp;lt;font color=blue&amp;gt;&lt;/ins&gt;before&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;BiddingStopTime&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;where highestPrice = value and highestBidder = this bidder and&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;while&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;deposit $ value &amp;gt; highestPrice&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;			&lt;/del&gt;this bidder : : amount = this bidder: :0ri amount + value .&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&lt;/ins&gt;where highestPrice = value &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;and&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;highestBidder = &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;this&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;bidder &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;and&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;					&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:::&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;this&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;bidder : : amount = &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;this&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;bidder: :0ri amount + value .&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;	&lt;/del&gt;term no3_1 : bidders can &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;withdrawOverbidMoney&lt;/del&gt;,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;				&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;when this bidder isn't highestBidder and this bidder: :amount &amp;gt; 0&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;term&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;no3_1 : bidders &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;can&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &amp;lt;font color=blue&amp;gt;withdraw&amp;lt;/font&amp;gt;OverbidMoney&lt;/ins&gt;,&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;while withdraw $this bidder : :amount&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;when&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &amp;lt;font color=blue&amp;gt;&lt;/ins&gt;this&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;bidder isn't highestBidder &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;and&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &amp;lt;font color=blue&amp;gt;&lt;/ins&gt;this&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;bidder: :amount &amp;gt; 0&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;where this bidder : : amount = 0.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;while&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &amp;lt;font color=blue&amp;gt;&lt;/ins&gt;withdraw&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;$&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;this&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;bidder : :amount&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&lt;/ins&gt;where &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;this&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;bidder : : amount = 0.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;		&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;	&lt;/del&gt;term no3_2 : bidders can &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;withdrawOverbidMoney&lt;/del&gt;,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;term&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;no3_2 : bidders &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;can&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &amp;lt;font color=blue&amp;gt;withdraw&amp;lt;/font&amp;gt;OverbidMoney&lt;/ins&gt;,&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;when this bidder is highestBidder and this bidder : : amount &amp;gt; highestPrice&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;when&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &amp;lt;font color=blue&amp;gt;&lt;/ins&gt;this&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;bidder is highestBidder &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;and&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &amp;lt;font color=blue&amp;gt;&lt;/ins&gt;this&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;bidder : : amount &amp;gt; highestPrice&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;while withdraw $this bidder : : amount - highestPrice&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;while&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &amp;lt;font color=blue&amp;gt;&lt;/ins&gt;withdraw&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;$&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;this&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;bidder : : amount - highestPrice&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;where this bidder : : amount = highestPrice.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&lt;/ins&gt;where &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;this&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;bidder : : amount = highestPrice.&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;			&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;		&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;	&lt;/del&gt;term no4 : auctioneer can StopBidding,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;:&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;term&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;no4 : auctioneer &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;can&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;StopBidding,&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;when after BiddingStopTime and before auctioneer did StopBidding&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;when&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &amp;lt;font color=blue&amp;gt;&lt;/ins&gt;after&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;BiddingStopTime &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;and&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &amp;lt;font color=blue&amp;gt;&lt;/ins&gt;before&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;auctioneer &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;did&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;StopBidding&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;		&lt;/del&gt;while withdraw $highestPrice.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;::&amp;lt;font color=blue&amp;gt;&lt;/ins&gt;while&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &amp;lt;font color=blue&amp;gt;&lt;/ins&gt;withdraw&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/font&amp;gt; &lt;/ins&gt;$highestPrice.&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;/del&gt;'''&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;'''&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;'''&amp;lt;syntaxhighlight lang=&amp;quot;spec&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;'''&amp;lt;syntaxhighlight lang=&amp;quot;spec&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/* auctioneerT.sol */&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/* auctioneerT.sol */&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>20201027</name></author>
	</entry>
	<entry>
		<id>https://www.smartlegalcontract.cn/mediawiki/index.php?title=ExampleofAuctionContract&amp;diff=401&amp;oldid=prev</id>
		<title>20201027：建立内容为“{{DISPLAYTITLE:&lt;span style=&quot;position: absolute; clip: rect(1px 1px 1px 1px); clip: rect(1px, 1px, 1px, 1px);&quot;&gt;{{FULLPAGENAME}}&lt;/span&gt;}} === &lt;div style=&quot; backgroun…”的新页面</title>
		<link rel="alternate" type="text/html" href="https://www.smartlegalcontract.cn/mediawiki/index.php?title=ExampleofAuctionContract&amp;diff=401&amp;oldid=prev"/>
		<updated>2021-03-09T13:50:50Z</updated>

		<summary type="html">&lt;p&gt;建立内容为“{{DISPLAYTITLE:&amp;lt;span style=&amp;quot;position: absolute; clip: rect(1px 1px 1px 1px); clip: rect(1px, 1px, 1px, 1px);&amp;quot;&amp;gt;{{FULLPAGENAME}}&amp;lt;/span&amp;gt;}} === &amp;lt;div style=&amp;quot; backgroun…”的新页面&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{DISPLAYTITLE:&amp;lt;span style=&amp;quot;position: absolute; clip: rect(1px 1px 1px 1px); clip: rect(1px, 1px, 1px, 1px);&amp;quot;&amp;gt;{{FULLPAGENAME}}&amp;lt;/span&amp;gt;}}&lt;br /&gt;
=== &amp;lt;div style=&amp;quot; background:#EBEBEB; padding-top: 10px; height:45px; padding-left:15px &amp;quot;&amp;gt; Auction contract  &amp;lt;/div&amp;gt; ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
||&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Auction contract involves two parties: auctioneer who is an enterprise legal person engaged in auction activities, and bidders who are some citizens, legal persons or organizations to participate in bidding for auction targets. The highest bidding process is described as the following steps. The auctioneer starts the auction system after setting a reserve price and an auction end time, and waits for the auction to end; The bidders can bid anytime during the system. If the bid is greater than the current highest price, the system records it as new highest price, puts the bid into the fund pool, and returns the bid paid by the previous highest bidder; otherwise, the bidder fails and the bid is returned; After the auction time is over, the auctioneer can collect the highest bid from the fund pool.&lt;br /&gt;
|}&lt;br /&gt;
'''&amp;lt;syntaxhighlight lang=&amp;quot;spec&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
// Simple Auction.scs&lt;br /&gt;
contract SimpleAuction{&lt;br /&gt;
	party group bidders{&lt;br /&gt;
		amount : Money&lt;br /&gt;
		Bid()&lt;br /&gt;
		withdrawOverbidMoney()&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	party auctioneer{&lt;br /&gt;
		StartBidding(reservePrice : Money, biddingTime : Date)&lt;br /&gt;
		StopBidding()&lt;br /&gt;
	}&lt;br /&gt;
		&lt;br /&gt;
	highestPrice : Money&lt;br /&gt;
	highestBidder : biddersBiddingStop&lt;br /&gt;
	Time : Date&lt;br /&gt;
	&lt;br /&gt;
	term no1 : auctioneer can StartBidding,&lt;br /&gt;
		when before auctioneer did StartBidding&lt;br /&gt;
		where highestPrice = reservePrice and BiddingStopTime = biddingTime + now.&lt;br /&gt;
		&lt;br /&gt;
	term no2 : bidders can Bid,&lt;br /&gt;
		when after auctioneer did StartBidding and before BiddingStopTime&lt;br /&gt;
		while deposit $ value &amp;gt; highestPrice&lt;br /&gt;
		where highestPrice = value and highestBidder = this bidder and&lt;br /&gt;
			this bidder : : amount = this bidder: :0ri amount + value .&lt;br /&gt;
					&lt;br /&gt;
	term no3_1 : bidders can withdrawOverbidMoney,&lt;br /&gt;
		when this bidder isn't highestBidder and this bidder: :amount &amp;gt; 0&lt;br /&gt;
		while withdraw $this bidder : :amount&lt;br /&gt;
		where this bidder : : amount = 0.&lt;br /&gt;
		&lt;br /&gt;
		&lt;br /&gt;
	term no3_2 : bidders can withdrawOverbidMoney,&lt;br /&gt;
		when this bidder is highestBidder and this bidder : : amount &amp;gt; highestPrice&lt;br /&gt;
		while withdraw $this bidder : : amount - highestPrice&lt;br /&gt;
		where this bidder : : amount = highestPrice.&lt;br /&gt;
			&lt;br /&gt;
	term no4 : auctioneer can StopBidding,&lt;br /&gt;
		when after BiddingStopTime and before auctioneer did StopBidding&lt;br /&gt;
		while withdraw $highestPrice.&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;'''&lt;br /&gt;
'''&amp;lt;syntaxhighlight lang=&amp;quot;spec&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
/* auctioneerT.sol */&lt;br /&gt;
pragma solidity &amp;gt;=0.4.0 &amp;lt;0.6.0;&lt;br /&gt;
&lt;br /&gt;
contract auctioneerT{&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
	//attributes of actionStartBidding&lt;br /&gt;
	bool _isStartBiddingDone;&lt;br /&gt;
	uint _StartBiddingTime;&lt;br /&gt;
	&lt;br /&gt;
	//attributes of actionCollectPayment&lt;br /&gt;
	bool _isCollectPaymentDone;&lt;br /&gt;
	uint _CollectPaymentTime;&lt;br /&gt;
	&lt;br /&gt;
	address _auctioneerAddress;&lt;br /&gt;
	uint _max;&lt;br /&gt;
	&lt;br /&gt;
	constructor() public{&lt;br /&gt;
		_max = now*1000;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function regist(address a) public {&lt;br /&gt;
		_auctioneerAddress = a;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function getAddress() public returns (address a){&lt;br /&gt;
		return _auctioneerAddress;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function StartBiddingDone() public{&lt;br /&gt;
		_StartBiddingTime = now;&lt;br /&gt;
		_isStartBiddingDone = true;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function StartBiddingTime()  public returns (uint result){&lt;br /&gt;
	    if(_isStartBiddingDone){&lt;br /&gt;
	        return _StartBiddingTime;&lt;br /&gt;
	    }&lt;br /&gt;
	    return _max;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function CollectPaymentDone() public{&lt;br /&gt;
		_CollectPaymentTime = now;&lt;br /&gt;
		_isCollectPaymentDone = true;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function CollectPaymentTime() public returns (uint result){&lt;br /&gt;
	    if(_isCollectPaymentDone){&lt;br /&gt;
	        return _CollectPaymentTime;&lt;br /&gt;
	    }&lt;br /&gt;
	    return _max;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;'''&lt;br /&gt;
'''&amp;lt;syntaxhighlight lang=&amp;quot;spec&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
/* biddersT.sol */&lt;br /&gt;
pragma solidity ^0.4.22;&lt;br /&gt;
&lt;br /&gt;
contract biddersT{&lt;br /&gt;
	&lt;br /&gt;
	struct bidderstype{&lt;br /&gt;
		uint amount;&lt;br /&gt;
		&lt;br /&gt;
		//attributes of actionBid&lt;br /&gt;
		bool _isBidDone;&lt;br /&gt;
		uint _BidTime;&lt;br /&gt;
		&lt;br /&gt;
		//attributes of actionWithdrawOverbidMoney&lt;br /&gt;
		bool _isWithdrawOverbidMoneyDone;&lt;br /&gt;
		uint _WithdrawOverbidMoneyTime;&lt;br /&gt;
		&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	uint _max;//time max&lt;br /&gt;
	uint _sum;//total member of this party&lt;br /&gt;
	uint _BidDoneNum;&lt;br /&gt;
	uint[] _BidTime;&lt;br /&gt;
	&lt;br /&gt;
	uint _WithdrawOverbidMoneyDoneNum;&lt;br /&gt;
	uint[] _WithdrawOverbidMoneyTime;&lt;br /&gt;
	&lt;br /&gt;
	bidderstype _Empty;//used to initialize&lt;br /&gt;
	bidderstype[] _biddersEntity;&lt;br /&gt;
	address[] _biddersAddress;&lt;br /&gt;
	mapping(address=&amp;gt;uint) _userlist;&lt;br /&gt;
	&lt;br /&gt;
	function biddersT(){&lt;br /&gt;
		_BidDoneNum = 0;&lt;br /&gt;
		&lt;br /&gt;
		_WithdrawOverbidMoneyDoneNum = 0;&lt;br /&gt;
		&lt;br /&gt;
		_biddersEntity.push(_Empty);&lt;br /&gt;
		_max = now*1000;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function getSum() public returns(uint c){&lt;br /&gt;
		return _sum;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function add(address a) public {&lt;br /&gt;
		_biddersEntity.push(_Empty);&lt;br /&gt;
	    _biddersAddress.push(a);&lt;br /&gt;
	//	_userlist[address] = _sum;&lt;br /&gt;
	&lt;br /&gt;
		_sum ++;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function remove(address a) public {&lt;br /&gt;
		uint num = _userlist[a];&lt;br /&gt;
		_biddersEntity[num] = _biddersEntity[_sum-1];&lt;br /&gt;
		delete(_biddersEntity[num]);&lt;br /&gt;
		delete(_userlist[a]);&lt;br /&gt;
		_sum --;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function getList() public returns (address[] a){&lt;br /&gt;
		return _biddersAddress;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function contains(address a) public returns (bool b){&lt;br /&gt;
		return _userlist[a] != 0;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function getamount(address a) returns(uint _result){&lt;br /&gt;
		uint num = _userlist[a];&lt;br /&gt;
		return _biddersEntity[num].amount;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function setamount(address a, uint b){&lt;br /&gt;
		uint num = _userlist[a];&lt;br /&gt;
		_biddersEntity[num].amount = b;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function BidDone(address a){&lt;br /&gt;
	    uint num = _userlist[a];&lt;br /&gt;
	    _biddersEntity[num]._BidTime = now;&lt;br /&gt;
		_biddersEntity[num]._isBidDone = true;&lt;br /&gt;
	    _BidTime.push(_biddersEntity[num]._BidTime);&lt;br /&gt;
	    _BidDoneNum ++;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function BidTime(address a) returns (uint result){&lt;br /&gt;
	    uint num = _userlist[a];&lt;br /&gt;
	    if(_biddersEntity[num]._isBidDone){&lt;br /&gt;
	        return _biddersEntity[num]._BidTime;&lt;br /&gt;
	    }&lt;br /&gt;
	    return _max;&lt;br /&gt;
	}&lt;br /&gt;
				&lt;br /&gt;
	function BidAllTime() returns (uint result){&lt;br /&gt;
	    if(_BidDoneNum == _max-1){&lt;br /&gt;
	        return _BidTime[_BidDoneNum-1];&lt;br /&gt;
	    }&lt;br /&gt;
	    return _max;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function BidSomeTime() returns (uint result){&lt;br /&gt;
	    if(_BidDoneNum &amp;gt;= 1){&lt;br /&gt;
	        return _BidTime[0];&lt;br /&gt;
	    }&lt;br /&gt;
	    return _max;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function WithdrawOverbidMoneyDone(address a){&lt;br /&gt;
	    uint num = _userlist[a];&lt;br /&gt;
	    _biddersEntity[num]._WithdrawOverbidMoneyTime = now;&lt;br /&gt;
		_biddersEntity[num]._isWithdrawOverbidMoneyDone = true;&lt;br /&gt;
	    _WithdrawOverbidMoneyTime.push(_biddersEntity[num]._WithdrawOverbidMoneyTime);&lt;br /&gt;
	    _WithdrawOverbidMoneyDoneNum ++;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function WithdrawOverbidMoneyTime(address a) returns (uint result){&lt;br /&gt;
	    uint num = _userlist[a];&lt;br /&gt;
	    if(_biddersEntity[num]._isWithdrawOverbidMoneyDone){&lt;br /&gt;
	        return _biddersEntity[num]._WithdrawOverbidMoneyTime;&lt;br /&gt;
	    }&lt;br /&gt;
	    return _max;&lt;br /&gt;
	}&lt;br /&gt;
				&lt;br /&gt;
	function WithdrawOverbidMoneyAllTime() returns (uint result){&lt;br /&gt;
	    if(_WithdrawOverbidMoneyDoneNum == _max-1){&lt;br /&gt;
	        return _WithdrawOverbidMoneyTime[_WithdrawOverbidMoneyDoneNum-1];&lt;br /&gt;
	    }&lt;br /&gt;
	    return _max;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function WithdrawOverbidMoneySomeTime() returns (uint result){&lt;br /&gt;
	    if(_WithdrawOverbidMoneyDoneNum &amp;gt;= 1){&lt;br /&gt;
	        return _WithdrawOverbidMoneyTime[0];&lt;br /&gt;
	    }&lt;br /&gt;
	    return _max;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;'''&lt;br /&gt;
'''&amp;lt;syntaxhighlight lang=&amp;quot;spec&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
/* goodsOwnerT.sol */&lt;br /&gt;
pragma solidity ^0.4.22;&lt;br /&gt;
&lt;br /&gt;
contract goodsOwnerT{&lt;br /&gt;
	&lt;br /&gt;
	&lt;br /&gt;
	//attributes of actionStartBidding&lt;br /&gt;
	bool _isStartBiddingDone;&lt;br /&gt;
	uint _StartBiddingTime;&lt;br /&gt;
	bool _isgoodsOwnerDone; &lt;br /&gt;
	&lt;br /&gt;
	uint _max;&lt;br /&gt;
	&lt;br /&gt;
	//attributes of actionStopBidding&lt;br /&gt;
	bool _isStopBiddingDone;&lt;br /&gt;
	uint _StopBiddingTime;&lt;br /&gt;
	&lt;br /&gt;
	address[] _goodsOwnerAddress;&lt;br /&gt;
&lt;br /&gt;
    constructor() public{&lt;br /&gt;
	   _max = now*1000;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function regist (address[] a){&lt;br /&gt;
		_goodsOwnerAddress = a;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function getAddress() public returns (address[] a){&lt;br /&gt;
		return _goodsOwnerAddress;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function StartBiddingDone(address[] a){&lt;br /&gt;
//		StartBiddingTime = now;&lt;br /&gt;
	 _isgoodsOwnerDone = true;&lt;br /&gt;
	   //_isStartBiddingDone = true;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function StartBiddingTime() returns (uint result){&lt;br /&gt;
	    if(_isStartBiddingDone){&lt;br /&gt;
	        return _StartBiddingTime;&lt;br /&gt;
	    }&lt;br /&gt;
	    return _max;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function StopBiddingDone(address[] a){&lt;br /&gt;
	//	StopBiddingTime = now;&lt;br /&gt;
	 	_isgoodsOwnerDone = true;&lt;br /&gt;
	//	_StopBiddingTime = true;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	function StopBiddingTime() returns (uint result){&lt;br /&gt;
	    if(_isStopBiddingDone){&lt;br /&gt;
	        return _StopBiddingTime;&lt;br /&gt;
	    }&lt;br /&gt;
	    return _max;&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;'''&lt;br /&gt;
'''&amp;lt;syntaxhighlight lang=&amp;quot;spec&amp;quot; line=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
/* SimpleAuction.sol */&lt;br /&gt;
pragma solidity ^0.4.22;&lt;br /&gt;
&lt;br /&gt;
contract SimpleAuction {&lt;br /&gt;
&lt;br /&gt;
    address public beneficiary;&lt;br /&gt;
    uint public auctionEnd;&lt;br /&gt;
    address public highestBidder;&lt;br /&gt;
    uint public highestBid;&lt;br /&gt;
    mapping(address =&amp;gt; uint) pendingReturns;&lt;br /&gt;
    bool ended;&lt;br /&gt;
&lt;br /&gt;
    event HighestBidIncreased(address bidder, uint amount);&lt;br /&gt;
    event AuctionEnded(address winner, uint amount);&lt;br /&gt;
&lt;br /&gt;
    constructor(uint _biddingTime, address _beneficiary) public {&lt;br /&gt;
        beneficiary = _beneficiary;&lt;br /&gt;
        auctionEnd = now + _biddingTime;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    function bid() public payable {&lt;br /&gt;
&lt;br /&gt;
        require(now &amp;lt;= auctionEnd, &amp;quot;Auction already ended.&amp;quot;);&lt;br /&gt;
        require(msg.value &amp;gt; highestBid, &amp;quot;There already is a higher bid.&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
        if (highestBid != 0) {&lt;br /&gt;
            pendingReturns[highestBidder] += highestBid;&lt;br /&gt;
        }&lt;br /&gt;
        highestBidder = msg.sender;&lt;br /&gt;
        highestBid = msg.value;&lt;br /&gt;
        HighestBidIncreased(msg.sender, msg.value);&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    function withdraw() public returns (bool) {&lt;br /&gt;
        uint amount = pendingReturns[msg.sender];&lt;br /&gt;
        if (amount &amp;gt; 0) {&lt;br /&gt;
            pendingReturns[msg.sender] = 0;&lt;br /&gt;
&lt;br /&gt;
            if (!msg.sender.send(amount)) {&lt;br /&gt;
                // No need to call throw here, just reset the amount owing&lt;br /&gt;
                pendingReturns[msg.sender] = amount;&lt;br /&gt;
                return false;&lt;br /&gt;
            }&lt;br /&gt;
        }&lt;br /&gt;
        return true;&lt;br /&gt;
    }&lt;br /&gt;
&lt;br /&gt;
    function auctionEnd() public {&lt;br /&gt;
&lt;br /&gt;
        require(now &amp;gt;= auctionEnd, &amp;quot;Auction not yet ended.&amp;quot;);&lt;br /&gt;
        require(!ended, &amp;quot;auctionEnd has already been called.&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
        ended = true;&lt;br /&gt;
        AuctionEnded(highestBidder, highestBid);&lt;br /&gt;
&lt;br /&gt;
        beneficiary.transfer(highestBid);&lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;'''&lt;/div&gt;</summary>
		<author><name>20201027</name></author>
	</entry>
</feed>