diff --git a/config/config.go b/config/config.go index 38086e5..8bef354 100644 --- a/config/config.go +++ b/config/config.go @@ -1,6 +1,7 @@ package config import ( + "context" "fmt" "local/storage" "sync" @@ -17,6 +18,8 @@ type Config struct { Username string Password string DefaultNamespace string + Ctx context.Context + Can context.CancelFunc } func Values() Config { diff --git a/config/new.go b/config/new.go index 83fc5f9..b9b44d0 100644 --- a/config/new.go +++ b/config/new.go @@ -1,6 +1,7 @@ package config import ( + "context" "local/args" "local/storage" "os" @@ -17,6 +18,7 @@ func New() error { if err := as.Parse(); err != nil { return err } + ctx, can := context.WithCancel(context.Background()) config = Config{ db: as.Get("db").GetString(), Addr: as.Get("addr").GetString(), @@ -24,6 +26,8 @@ func New() error { Password: as.Get("pass").GetString(), Port: as.Get("port").GetString(), DefaultNamespace: as.Get("ns").GetString(), + Ctx: ctx, + Can: can, } storage.DefaultNamespace = config.DefaultNamespace DB, err := storage.New(storage.TypeFromString(config.db), config.Addr, config.Username, config.Password) diff --git a/copart/.log b/copart/.log deleted file mode 100644 index 8212905..0000000 --- a/copart/.log +++ /dev/null @@ -1,553 +0,0 @@ -2019/06/14 13:44:33 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:32.100278808 -0600 MDT m=+549.472307556] == [bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:33.649979402 -0600 MDT m=+551.022008143]) -2019/06/14 13:44:34 Blocking empty list... -2019/06/14 13:44:34 true = ([bid:$4,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:33.263653682 -0600 MDT m=+550.635682442] == [bid:$4,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:34.853057112 -0600 MDT m=+552.225085858]) -2019/06/14 13:44:35 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:33.649979402 -0600 MDT m=+551.022008143] == [bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:35.209579405 -0600 MDT m=+552.581608152]) -2019/06/14 13:44:35 Blocking empty list... -2019/06/14 13:44:36 Blocking empty list... -2019/06/14 13:44:36 true = ([bid:$4,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:34.853057112 -0600 MDT m=+552.225085858] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:36.442979544 -0600 MDT m=+553.815008292]) -2019/06/14 13:44:36 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:35.209579405 -0600 MDT m=+552.581608152] == [bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:36.765530586 -0600 MDT m=+554.137559334]) -2019/06/14 13:44:37 Blocking empty list... -2019/06/14 13:44:37 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:36.442979544 -0600 MDT m=+553.815008292] == [bid:$4,700 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:37.998799546 -0600 MDT m=+555.370828308]) -2019/06/14 13:44:38 Blocking empty list... -2019/06/14 13:44:38 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:36.765530586 -0600 MDT m=+554.137559334] == [bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:38.309365279 -0600 MDT m=+555.681394016]) -2019/06/14 13:44:39 Blocking empty list... -2019/06/14 13:44:39 true = ([bid:$4,700 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:37.998799546 -0600 MDT m=+555.370828308] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:39.632325485 -0600 MDT m=+557.004354235]) -2019/06/14 13:44:39 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:38.309365279 -0600 MDT m=+555.681394016] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:39.876272196 -0600 MDT m=+557.248300968]) -2019/06/14 13:44:40 Blocking empty list... -2019/06/14 13:44:41 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:39.632325485 -0600 MDT m=+557.004354235] == [bid:$4,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:41.210836371 -0600 MDT m=+558.582865114]) -2019/06/14 13:44:41 Blocking empty list... -2019/06/14 13:44:41 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:39.876272196 -0600 MDT m=+557.248300968] == [bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:41.434892417 -0600 MDT m=+558.806921162]) -2019/06/14 13:44:42 Blocking empty list... -2019/06/14 13:44:42 true = ([bid:$4,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:41.210836371 -0600 MDT m=+558.582865114] == [bid:$4,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:42.800903683 -0600 MDT m=+560.172932419]) -2019/06/14 13:44:42 true = ([bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:41.434892417 -0600 MDT m=+558.806921162] == [bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:42.975489596 -0600 MDT m=+560.347518332]) -2019/06/14 13:44:43 Blocking empty list... -2019/06/14 13:44:44 Blocking empty list... -2019/06/14 13:44:44 true = ([bid:$4,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:42.800903683 -0600 MDT m=+560.172932419] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:44.383681507 -0600 MDT m=+561.755710284]) -2019/06/14 13:44:44 true = ([bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:42.975489596 -0600 MDT m=+560.347518332] == [bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:44.533291771 -0600 MDT m=+561.905320516]) -2019/06/14 13:44:45 Blocking empty list... -2019/06/14 13:44:46 Blocking empty list... -2019/06/14 13:44:46 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:44.383681507 -0600 MDT m=+561.755710284] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:46.651673699 -0600 MDT m=+564.023702462]) -2019/06/14 13:44:46 true = ([bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:44.533291771 -0600 MDT m=+561.905320516] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:46.71137253 -0600 MDT m=+564.083401292]) -2019/06/14 13:44:47 Blocking empty list... -2019/06/14 13:44:48 Blocking empty list... -2019/06/14 13:44:49 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:46.651673699 -0600 MDT m=+564.023702462] == [bid:$5,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:49.04381699 -0600 MDT m=+566.415845754]) -2019/06/14 13:44:49 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:46.71137253 -0600 MDT m=+564.083401292] == [bid:$800 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:49.075309089 -0600 MDT m=+566.447337833]) -2019/06/14 13:44:49 Blocking empty list... -2019/06/14 13:44:50 Blocking empty list... -2019/06/14 13:44:50 true = ([bid:$5,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:49.04381699 -0600 MDT m=+566.415845754] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:50.626495561 -0600 MDT m=+567.998524315]) -2019/06/14 13:44:50 true = ([bid:$800 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:49.075309089 -0600 MDT m=+566.447337833] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:50.637091128 -0600 MDT m=+568.009119874]) -2019/06/14 13:44:51 Blocking empty list... -2019/06/14 13:44:52 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:50.637091128 -0600 MDT m=+568.009119874] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:52.201787818 -0600 MDT m=+569.573816555]) -2019/06/14 13:44:52 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:50.626495561 -0600 MDT m=+567.998524315] == [bid:$5,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:52.210615356 -0600 MDT m=+569.582644106]) -2019/06/14 13:44:52 Blocking empty list... -2019/06/14 13:44:53 Blocking empty list... -2019/06/14 13:44:53 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:52.201787818 -0600 MDT m=+569.573816555] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:53.785375027 -0600 MDT m=+571.157403770]) -2019/06/14 13:44:53 true = ([bid:$5,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:52.210615356 -0600 MDT m=+569.582644106] == [bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:53.794478475 -0600 MDT m=+571.166507235]) -2019/06/14 13:44:54 Blocking empty list... -2019/06/14 13:44:55 Blocking empty list... -2019/06/14 13:44:55 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:53.785375027 -0600 MDT m=+571.157403770] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:55.341663372 -0600 MDT m=+572.713692125]) -2019/06/14 13:44:55 true = ([bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:53.794478475 -0600 MDT m=+571.166507235] == [bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:55.347619414 -0600 MDT m=+572.719648150]) -2019/06/14 13:44:56 Blocking empty list... -2019/06/14 13:44:56 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:55.341663372 -0600 MDT m=+572.713692125] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:56.887273765 -0600 MDT m=+574.259302513]) -2019/06/14 13:44:56 true = ([bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:55.347619414 -0600 MDT m=+572.719648150] == [bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:56.894005011 -0600 MDT m=+574.266033759]) -2019/06/14 13:44:57 Blocking empty list... -2019/06/14 13:44:58 Blocking empty list... -2019/06/14 13:44:58 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:56.887273765 -0600 MDT m=+574.259302513] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:58.467862845 -0600 MDT m=+575.839891596]) -2019/06/14 13:44:58 true = ([bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:56.894005011 -0600 MDT m=+574.266033759] == [bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:58.467875669 -0600 MDT m=+575.839904419]) -2019/06/14 13:44:59 Blocking empty list... -2019/06/14 13:45:00 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:58.467862845 -0600 MDT m=+575.839891596] == [bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:00.029947727 -0600 MDT m=+577.401976473]) -2019/06/14 13:45:00 true = ([bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:58.467875669 -0600 MDT m=+575.839904419] == [bid:$6,000 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:00.033625382 -0600 MDT m=+577.405654118]) -2019/06/14 13:45:00 Blocking empty list... -2019/06/14 13:45:01 Blocking empty list... -2019/06/14 13:45:01 true = ([bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:00.029947727 -0600 MDT m=+577.401976473] == [bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:01.617679613 -0600 MDT m=+578.989708348]) -2019/06/14 13:45:01 true = ([bid:$6,000 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:00.033625382 -0600 MDT m=+577.405654118] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:01.626412103 -0600 MDT m=+578.998440838]) -2019/06/14 13:45:02 Blocking empty list... -2019/06/14 13:45:03 true = ([bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:01.617679613 -0600 MDT m=+578.989708348] == [bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:03.182911975 -0600 MDT m=+580.554940742]) -2019/06/14 13:45:03 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:01.626412103 -0600 MDT m=+578.998440838] == [bid:$6,100 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:03.199787677 -0600 MDT m=+580.571816439]) -2019/06/14 13:45:03 Blocking empty list... -2019/06/14 13:45:04 Blocking empty list... -2019/06/14 13:45:04 true = ([bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:03.182911975 -0600 MDT m=+580.554940742] == [bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:04.746031495 -0600 MDT m=+582.118060242]) -2019/06/14 13:45:04 true = ([bid:$6,100 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:03.199787677 -0600 MDT m=+580.571816439] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:04.767179705 -0600 MDT m=+582.139208448]) -2019/06/14 13:45:05 Blocking empty list... -2019/06/14 13:45:06 Blocking empty list... -2019/06/14 13:45:06 true = ([bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:04.746031495 -0600 MDT m=+582.118060242] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:06.310545892 -0600 MDT m=+583.682574636]) -2019/06/14 13:45:06 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:04.767179705 -0600 MDT m=+582.139208448] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:06.335166826 -0600 MDT m=+583.707195567]) -2019/06/14 13:45:07 Blocking empty list... -2019/06/14 13:45:07 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:06.310545892 -0600 MDT m=+583.682574636] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:07.883620143 -0600 MDT m=+585.255648901]) -2019/06/14 13:45:07 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:06.335166826 -0600 MDT m=+583.707195567] == [bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:07.907584605 -0600 MDT m=+585.279613340]) -2019/06/14 13:45:08 Blocking empty list... -2019/06/14 13:45:09 Blocking empty list... -2019/06/14 13:45:09 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:07.883620143 -0600 MDT m=+585.255648901] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:09.45518732 -0600 MDT m=+586.827216080]) -2019/06/14 13:45:09 true = ([bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:07.907584605 -0600 MDT m=+585.279613340] == [bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:09.4663536 -0600 MDT m=+586.838382341]) -2019/06/14 13:45:10 Blocking empty list... -2019/06/14 13:45:11 Blocking empty list... -2019/06/14 13:45:11 true = ([bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:09.4663536 -0600 MDT m=+586.838382341] == [bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:11.714388541 -0600 MDT m=+589.086417329]) -2019/06/14 13:45:11 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:09.45518732 -0600 MDT m=+586.827216080] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:11.744893291 -0600 MDT m=+589.116922050]) -2019/06/14 13:45:12 Blocking empty list... -2019/06/14 13:45:13 Blocking empty list... -2019/06/14 13:45:13 true = ([bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:11.714388541 -0600 MDT m=+589.086417329] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:13.45008916 -0600 MDT m=+590.822117920]) -2019/06/14 13:45:13 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:11.744893291 -0600 MDT m=+589.116922050] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:13.467717253 -0600 MDT m=+590.839745995]) -2019/06/14 13:45:14 Blocking empty list... -2019/06/14 13:45:15 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:13.45008916 -0600 MDT m=+590.822117920] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:15.028250727 -0600 MDT m=+592.400279501]) -2019/06/14 13:45:15 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:13.467717253 -0600 MDT m=+590.839745995] == [bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:15.029365652 -0600 MDT m=+592.401394387]) -2019/06/14 13:45:15 Blocking empty list... -2019/06/14 13:45:16 Blocking empty list... -2019/06/14 13:45:16 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:15.028250727 -0600 MDT m=+592.400279501] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:16.574778848 -0600 MDT m=+593.946807598]) -2019/06/14 13:45:16 true = ([bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:15.029365652 -0600 MDT m=+592.401394387] == [bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:16.581757004 -0600 MDT m=+593.953785791]) -2019/06/14 13:45:17 Blocking empty list... -2019/06/14 13:45:18 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:16.574778848 -0600 MDT m=+593.946807598] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:18.148148234 -0600 MDT m=+595.520177008]) -2019/06/14 13:45:18 true = ([bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:16.581757004 -0600 MDT m=+593.953785791] == [bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:18.157707579 -0600 MDT m=+595.529736321]) -2019/06/14 13:45:18 Blocking empty list... -2019/06/14 13:45:19 Blocking empty list... -2019/06/14 13:45:19 true = ([bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:18.157707579 -0600 MDT m=+595.529736321] == [bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:19.727213553 -0600 MDT m=+597.099242300]) -2019/06/14 13:45:19 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:18.148148234 -0600 MDT m=+595.520177008] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:19.732192656 -0600 MDT m=+597.104221399]) -2019/06/14 13:45:20 Blocking empty list... -2019/06/14 13:45:21 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:19.732192656 -0600 MDT m=+597.104221399] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:21.300980036 -0600 MDT m=+598.673008782]) -2019/06/14 13:45:21 Blocking empty list... -2019/06/14 13:45:21 true = ([bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:19.727213553 -0600 MDT m=+597.099242300] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:21.307722352 -0600 MDT m=+598.679751090]) -2019/06/14 13:45:22 Blocking empty list... -2019/06/14 13:45:23 Blocking empty list... -2019/06/14 13:45:23 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:21.300980036 -0600 MDT m=+598.673008782] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:23.379902263 -0600 MDT m=+600.751931031]) -2019/06/14 13:45:23 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:21.307722352 -0600 MDT m=+598.679751090] == [bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:23.392826934 -0600 MDT m=+600.764855701]) -2019/06/14 13:45:24 Blocking empty list... -2019/06/14 13:45:25 Blocking empty list... -2019/06/14 13:45:25 true = ([bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:23.392826934 -0600 MDT m=+600.764855701] == [bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:25.71438718 -0600 MDT m=+603.086415961]) -2019/06/14 13:45:25 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:23.379902263 -0600 MDT m=+600.751931031] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:25.759869463 -0600 MDT m=+603.131898219]) -2019/06/14 13:45:26 Blocking empty list... -2019/06/14 13:45:27 Blocking empty list... -2019/06/14 13:45:27 true = ([bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:25.71438718 -0600 MDT m=+603.086415961] == [bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:27.748442664 -0600 MDT m=+605.120471419]) -2019/06/14 13:45:27 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:25.759869463 -0600 MDT m=+603.131898219] == [bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:27.762685583 -0600 MDT m=+605.134714377]) -2019/06/14 13:45:28 Blocking empty list... -2019/06/14 13:45:29 Blocking empty list... -2019/06/14 13:45:29 true = ([bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:27.762685583 -0600 MDT m=+605.134714377] == [bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:29.693781661 -0600 MDT m=+607.065810420]) -2019/06/14 13:45:29 true = ([bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:27.748442664 -0600 MDT m=+605.120471419] == [bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:29.7037451 -0600 MDT m=+607.075773851]) -2019/06/14 13:45:30 Blocking empty list... -2019/06/14 13:45:31 Blocking empty list... -2019/06/14 13:45:31 true = ([bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:29.7037451 -0600 MDT m=+607.075773851] == [bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:31.581812917 -0600 MDT m=+608.953841681]) -2019/06/14 13:45:31 true = ([bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:29.693781661 -0600 MDT m=+607.065810420] == [bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:31.603363109 -0600 MDT m=+608.975391926]) -2019/06/14 13:45:32 Blocking empty list... -2019/06/14 13:45:33 true = ([bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:31.581812917 -0600 MDT m=+608.953841681] == [bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:33.129003954 -0600 MDT m=+610.501032706]) -2019/06/14 13:45:33 true = ([bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:31.603363109 -0600 MDT m=+608.975391926] == [bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:33.154188308 -0600 MDT m=+610.526217074]) -2019/06/14 13:45:33 Blocking empty list... -2019/06/14 13:45:34 Blocking empty list... -2019/06/14 13:45:34 true = ([bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:33.129003954 -0600 MDT m=+610.501032706] == [bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:34.698293537 -0600 MDT m=+612.070322308]) -2019/06/14 13:45:34 true = ([bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:33.154188308 -0600 MDT m=+610.526217074] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:34.740571037 -0600 MDT m=+612.112599799]) -2019/06/14 13:45:35 Blocking empty list... -2019/06/14 13:45:36 Blocking empty list... -2019/06/14 13:45:36 true = ([bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:34.698293537 -0600 MDT m=+612.070322308] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:36.670375341 -0600 MDT m=+614.042404108]) -2019/06/14 13:45:36 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:34.740571037 -0600 MDT m=+612.112599799] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:36.714017157 -0600 MDT m=+614.086045966]) -2019/06/14 13:45:37 Blocking empty list... -2019/06/14 13:45:38 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:36.670375341 -0600 MDT m=+614.042404108] == [bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:38.247777676 -0600 MDT m=+615.619806410]) -2019/06/14 13:45:38 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:36.714017157 -0600 MDT m=+614.086045966] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:38.270868543 -0600 MDT m=+615.642897295]) -2019/06/14 13:45:38 Blocking empty list... -2019/06/14 13:45:39 Blocking empty list... -2019/06/14 13:45:39 true = ([bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:38.247777676 -0600 MDT m=+615.619806410] == [bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:39.820522402 -0600 MDT m=+617.192551139]) -2019/06/14 13:45:39 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:38.270868543 -0600 MDT m=+615.642897295] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:39.840696355 -0600 MDT m=+617.212725106]) -2019/06/14 13:45:40 Blocking empty list... -2019/06/14 13:45:41 Blocking empty list... -2019/06/14 13:45:41 true = ([bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:39.820522402 -0600 MDT m=+617.192551139] == [bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:41.865548025 -0600 MDT m=+619.237576784]) -2019/06/14 13:45:41 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:39.840696355 -0600 MDT m=+617.212725106] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:41.87975323 -0600 MDT m=+619.251782000]) -2019/06/14 13:45:42 Blocking empty list... -2019/06/14 13:45:43 Blocking empty list... -2019/06/14 13:45:44 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:41.87975323 -0600 MDT m=+619.251782000] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:44.12899537 -0600 MDT m=+621.501024149]) -2019/06/14 13:45:44 true = ([bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:41.865548025 -0600 MDT m=+619.237576784] == [bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:44.160166521 -0600 MDT m=+621.532195282]) -2019/06/14 13:45:44 Blocking empty list... -2019/06/14 13:45:45 Blocking empty list... -2019/06/14 13:45:45 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:44.12899537 -0600 MDT m=+621.501024149] == [bid:Next Item on title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:45.698231339 -0600 MDT m=+623.070260115]) -2019/06/14 13:45:45 true = ([bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:44.160166521 -0600 MDT m=+621.532195282] == [bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:45.730591096 -0600 MDT m=+623.102619832]) -2019/06/14 13:45:46 Blocking empty list... -2019/06/14 13:45:47 true = ([bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:45.730591096 -0600 MDT m=+623.102619832] == [bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:47.300433357 -0600 MDT m=+624.672462125]) -2019/06/14 13:45:47 Blocking empty list... -2019/06/14 13:45:47 DETAIL 8 6 -2019/06/14 13:45:47 false = ([bid:Next Item on title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:45.698231339 -0600 MDT m=+623.070260115] == [bid:$950 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:47.326540361 -0600 MDT m=+624.698569101]) -2019/06/14 13:45:47 DETAIL 8 6 -2019/06/14 13:45:47 TOP -2019/06/14 13:45:47 C [bid:$950 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:47.970680447 -0600 MDT m=+625.342709201] -2019/06/14 13:45:48 Blocking empty list... -2019/06/14 13:45:48 true = ([bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:47.300433357 -0600 MDT m=+624.672462125] == [bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:48.875565095 -0600 MDT m=+626.247593841]) -2019/06/14 13:45:49 Blocking empty list... -2019/06/14 13:45:49 true = ([bid:$950 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:47.970680447 -0600 MDT m=+625.342709201] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:49.530146108 -0600 MDT m=+626.902174848]) -2019/06/14 13:45:50 Blocking empty list... -2019/06/14 13:45:50 true = ([bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:48.875565095 -0600 MDT m=+626.247593841] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:50.441141654 -0600 MDT m=+627.813170424]) -2019/06/14 13:45:51 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:49.530146108 -0600 MDT m=+626.902174848] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:51.092703578 -0600 MDT m=+628.464732312]) -2019/06/14 13:45:51 Blocking empty list... -2019/06/14 13:45:52 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:50.441141654 -0600 MDT m=+627.813170424] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:52.014105523 -0600 MDT m=+629.386134268]) -2019/06/14 13:45:52 Blocking empty list... -2019/06/14 13:45:52 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:51.092703578 -0600 MDT m=+628.464732312] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:52.666563883 -0600 MDT m=+630.038592628]) -2019/06/14 13:45:53 Blocking empty list... -2019/06/14 13:45:53 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:52.014105523 -0600 MDT m=+629.386134268] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:53.557551959 -0600 MDT m=+630.929580695]) -2019/06/14 13:45:54 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:52.666563883 -0600 MDT m=+630.038592628] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:54.239611178 -0600 MDT m=+631.611639922]) -2019/06/14 13:45:54 Blocking empty list... -2019/06/14 13:45:55 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:53.557551959 -0600 MDT m=+630.929580695] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:55.114075035 -0600 MDT m=+632.486103788]) -2019/06/14 13:45:55 Blocking empty list... -2019/06/14 13:45:55 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:54.239611178 -0600 MDT m=+631.611639922] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:55.804221548 -0600 MDT m=+633.176250310]) -2019/06/14 13:45:56 Blocking empty list... -2019/06/14 13:45:56 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:55.114075035 -0600 MDT m=+632.486103788] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:56.706568281 -0600 MDT m=+634.078597042]) -2019/06/14 13:45:57 Blocking empty list... -2019/06/14 13:45:57 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:55.804221548 -0600 MDT m=+633.176250310] == [bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:57.361048223 -0600 MDT m=+634.733076974]) -2019/06/14 13:45:58 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:56.706568281 -0600 MDT m=+634.078597042] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:58.261410026 -0600 MDT m=+635.633438778]) -2019/06/14 13:45:58 Blocking empty list... -2019/06/14 13:45:58 true = ([bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:57.361048223 -0600 MDT m=+634.733076974] == [bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:58.912388766 -0600 MDT m=+636.284417514]) -2019/06/14 13:45:59 Blocking empty list... -2019/06/14 13:45:59 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:58.261410026 -0600 MDT m=+635.633438778] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:59.82282752 -0600 MDT m=+637.194856272]) -2019/06/14 13:46:00 Blocking empty list... -2019/06/14 13:46:00 true = ([bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:58.912388766 -0600 MDT m=+636.284417514] == [bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:00.465703716 -0600 MDT m=+637.837732454]) -2019/06/14 13:46:01 Blocking empty list... -2019/06/14 13:46:01 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:59.82282752 -0600 MDT m=+637.194856272] == [bid:Bonus title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:01.397741474 -0600 MDT m=+638.769770221]) -2019/06/14 13:46:02 true = ([bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:00.465703716 -0600 MDT m=+637.837732454] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:02.023624181 -0600 MDT m=+639.395652927]) -2019/06/14 13:46:02 Blocking empty list... -2019/06/14 13:46:03 true = ([bid:Bonus title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:01.397741474 -0600 MDT m=+638.769770221] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:03.006045999 -0600 MDT m=+640.378074735]) -2019/06/14 13:46:03 Blocking empty list... -2019/06/14 13:46:03 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:02.023624181 -0600 MDT m=+639.395652927] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:03.58135933 -0600 MDT m=+640.953388064]) -2019/06/14 13:46:04 Blocking empty list... -2019/06/14 13:46:04 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:03.006045999 -0600 MDT m=+640.378074735] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:04.578964932 -0600 MDT m=+641.950993680]) -2019/06/14 13:46:05 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:03.58135933 -0600 MDT m=+640.953388064] == [bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:05.140126563 -0600 MDT m=+642.512155309]) -2019/06/14 13:46:05 Blocking empty list... -2019/06/14 13:46:06 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:04.578964932 -0600 MDT m=+641.950993680] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:06.178025052 -0600 MDT m=+643.550053786]) -2019/06/14 13:46:06 Blocking empty list... -2019/06/14 13:46:06 true = ([bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:05.140126563 -0600 MDT m=+642.512155309] == [bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:06.697389814 -0600 MDT m=+644.069418561]) -2019/06/14 13:46:07 Blocking empty list... -2019/06/14 13:46:07 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:06.178025052 -0600 MDT m=+643.550053786] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:07.780702876 -0600 MDT m=+645.152731610]) -2019/06/14 13:46:08 true = ([bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:06.697389814 -0600 MDT m=+644.069418561] == [bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:08.248101491 -0600 MDT m=+645.620130237]) -2019/06/14 13:46:08 Blocking empty list... -2019/06/14 13:46:09 Blocking empty list... -2019/06/14 13:46:09 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:07.780702876 -0600 MDT m=+645.152731610] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:09.386820437 -0600 MDT m=+646.758849193]) -2019/06/14 13:46:09 true = ([bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:08.248101491 -0600 MDT m=+645.620130237] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:09.818455714 -0600 MDT m=+647.190484458]) -2019/06/14 13:46:10 Blocking empty list... -2019/06/14 13:46:10 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:09.386820437 -0600 MDT m=+646.758849193] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:10.971483398 -0600 MDT m=+648.343512143]) -2019/06/14 13:46:11 Blocking empty list... -2019/06/14 13:46:11 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:09.818455714 -0600 MDT m=+647.190484458] == [bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:11.378239494 -0600 MDT m=+648.750268245]) -2019/06/14 13:46:12 Blocking empty list... -2019/06/14 13:46:12 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:10.971483398 -0600 MDT m=+648.343512143] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:12.537834103 -0600 MDT m=+649.909862840]) -2019/06/14 13:46:12 true = ([bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:11.378239494 -0600 MDT m=+648.750268245] == [bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:12.921818006 -0600 MDT m=+650.293846777]) -2019/06/14 13:46:13 Blocking empty list... -2019/06/14 13:46:14 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:12.537834103 -0600 MDT m=+649.909862840] == [bid:Next Item on title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:14.115315236 -0600 MDT m=+651.487343970]) -2019/06/14 13:46:14 Blocking empty list... -2019/06/14 13:46:14 true = ([bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:12.921818006 -0600 MDT m=+650.293846777] == [bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:14.471067849 -0600 MDT m=+651.843096596]) -2019/06/14 13:46:15 Blocking empty list... -2019/06/14 13:46:15 DETAIL FRONT END REAR END -2019/06/14 13:46:15 false = ([bid:Next Item on title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:14.115315236 -0600 MDT m=+651.487343970] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:15.765589239 -0600 MDT m=+653.137617986]) -2019/06/14 13:46:15 DETAIL SIDE N/A -2019/06/14 13:46:15 TOP -2019/06/14 13:46:16 true = ([bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:14.471067849 -0600 MDT m=+651.843096596] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:16.02007468 -0600 MDT m=+653.392103448]) -2019/06/14 13:46:16 Blocking empty list... -2019/06/14 13:46:16 C [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:16.390025771 -0600 MDT m=+653.762054512] -2019/06/14 13:46:17 Blocking empty list... -2019/06/14 13:46:17 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:16.02007468 -0600 MDT m=+653.392103448] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:17.651753355 -0600 MDT m=+655.023782106]) -2019/06/14 13:46:17 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:16.390025771 -0600 MDT m=+653.762054512] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:17.945675122 -0600 MDT m=+655.317703865]) -2019/06/14 13:46:18 Blocking empty list... -2019/06/14 13:46:19 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:17.651753355 -0600 MDT m=+655.023782106] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:19.255879024 -0600 MDT m=+656.627907787]) -2019/06/14 13:46:19 Blocking empty list... -2019/06/14 13:46:19 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:17.945675122 -0600 MDT m=+655.317703865] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:19.503173988 -0600 MDT m=+656.875202744]) -2019/06/14 13:46:20 Blocking empty list... -2019/06/14 13:46:20 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:19.255879024 -0600 MDT m=+656.627907787] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:20.879860426 -0600 MDT m=+658.251889173]) -2019/06/14 13:46:21 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:19.503173988 -0600 MDT m=+656.875202744] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:21.074419533 -0600 MDT m=+658.446448280]) -2019/06/14 13:46:21 Blocking empty list... -2019/06/14 13:46:22 Blocking empty list... -2019/06/14 13:46:22 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:20.879860426 -0600 MDT m=+658.251889173] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:22.472975892 -0600 MDT m=+659.845004657]) -2019/06/14 13:46:22 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:21.074419533 -0600 MDT m=+658.446448280] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:22.638350764 -0600 MDT m=+660.010379508]) -2019/06/14 13:46:23 Blocking empty list... -2019/06/14 13:46:24 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:22.472975892 -0600 MDT m=+659.845004657] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:24.039286396 -0600 MDT m=+661.411315153]) -2019/06/14 13:46:24 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:22.638350764 -0600 MDT m=+660.010379508] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:24.210076006 -0600 MDT m=+661.582104749]) -2019/06/14 13:46:24 Blocking empty list... -2019/06/14 13:46:25 Blocking empty list... -2019/06/14 13:46:25 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:24.039286396 -0600 MDT m=+661.411315153] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:25.623141495 -0600 MDT m=+662.995170232]) -2019/06/14 13:46:25 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:24.210076006 -0600 MDT m=+661.582104749] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:25.77105872 -0600 MDT m=+663.143087460]) -2019/06/14 13:46:26 Blocking empty list... -2019/06/14 13:46:27 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:25.623141495 -0600 MDT m=+662.995170232] == [bid:Bonus title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:27.217110188 -0600 MDT m=+664.589138960]) -2019/06/14 13:46:27 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:25.77105872 -0600 MDT m=+663.143087460] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:27.316556146 -0600 MDT m=+664.688584889]) -2019/06/14 13:46:27 Blocking empty list... -2019/06/14 13:46:28 Blocking empty list... -2019/06/14 13:46:28 true = ([bid:Bonus title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:27.217110188 -0600 MDT m=+664.589138960] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:28.804421116 -0600 MDT m=+666.176449864]) -2019/06/14 13:46:28 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:27.316556146 -0600 MDT m=+664.688584889] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:28.874885439 -0600 MDT m=+666.246914183]) -2019/06/14 13:46:29 Blocking empty list... -2019/06/14 13:46:30 Blocking empty list... -2019/06/14 13:46:30 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:28.804421116 -0600 MDT m=+666.176449864] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:30.378302778 -0600 MDT m=+667.750331525]) -2019/06/14 13:46:30 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:28.874885439 -0600 MDT m=+666.246914183] == [bid:Bonus title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:30.430949455 -0600 MDT m=+667.802978198]) -2019/06/14 13:46:31 Blocking empty list... -2019/06/14 13:46:31 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:30.378302778 -0600 MDT m=+667.750331525] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:31.953632384 -0600 MDT m=+669.325661131]) -2019/06/14 13:46:31 true = ([bid:Bonus title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:30.430949455 -0600 MDT m=+667.802978198] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:31.996367484 -0600 MDT m=+669.368396221]) -2019/06/14 13:46:32 Blocking empty list... -2019/06/14 13:46:33 Blocking empty list... -2019/06/14 13:46:33 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:31.953632384 -0600 MDT m=+669.325661131] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:33.521086939 -0600 MDT m=+670.893115677]) -2019/06/14 13:46:33 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:31.996367484 -0600 MDT m=+669.368396221] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:33.571119989 -0600 MDT m=+670.943148735]) -2019/06/14 13:46:34 Blocking empty list... -2019/06/14 13:46:35 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:33.521086939 -0600 MDT m=+670.893115677] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:35.111873847 -0600 MDT m=+672.483902604]) -2019/06/14 13:46:35 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:33.571119989 -0600 MDT m=+670.943148735] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:35.140044919 -0600 MDT m=+672.512073682]) -2019/06/14 13:46:35 Blocking empty list... -2019/06/14 13:46:36 Blocking empty list... -2019/06/14 13:46:36 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:35.111873847 -0600 MDT m=+672.483902604] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:36.691188678 -0600 MDT m=+674.063217431]) -2019/06/14 13:46:36 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:35.140044919 -0600 MDT m=+672.512073682] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:36.72922032 -0600 MDT m=+674.101249074]) -2019/06/14 13:46:37 Blocking empty list... -2019/06/14 13:46:38 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:36.691188678 -0600 MDT m=+674.063217431] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:38.271432569 -0600 MDT m=+675.643461305]) -2019/06/14 13:46:38 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:36.72922032 -0600 MDT m=+674.101249074] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:38.298540491 -0600 MDT m=+675.670569229]) -2019/06/14 13:46:38 Blocking empty list... -2019/06/14 13:46:39 Blocking empty list... -2019/06/14 13:46:39 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:38.271432569 -0600 MDT m=+675.643461305] == [bid:Next Item on title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:39.854917796 -0600 MDT m=+677.226946542]) -2019/06/14 13:46:39 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:38.298540491 -0600 MDT m=+675.670569229] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:39.86269596 -0600 MDT m=+677.234724702]) -2019/06/14 13:46:40 Blocking empty list... -2019/06/14 13:46:41 Blocking empty list... -2019/06/14 13:46:41 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:39.86269596 -0600 MDT m=+677.234724702] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:41.421462137 -0600 MDT m=+678.793490880]) -2019/06/14 13:46:41 DETAIL 2.0L 4 4.8L 8 -2019/06/14 13:46:41 false = ([bid:Next Item on title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:39.854917796 -0600 MDT m=+677.226946542] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:41.444806466 -0600 MDT m=+678.816835202]) -2019/06/14 13:46:41 DETAIL $2,316 $5,782 -2019/06/14 13:46:41 TOP -2019/06/14 13:46:42 C [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:42.058019248 -0600 MDT m=+679.430047994] -2019/06/14 13:46:42 Blocking empty list... -2019/06/14 13:46:42 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:41.421462137 -0600 MDT m=+678.793490880] == [bid:Sold on title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:42.978837839 -0600 MDT m=+680.350866588]) -2019/06/14 13:46:43 Blocking empty list... -2019/06/14 13:46:43 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:42.058019248 -0600 MDT m=+679.430047994] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:43.652922025 -0600 MDT m=+681.024950771]) -2019/06/14 13:46:44 stale element reference: stale element reference: element is not attached to the page document - (Session info: chrome=75.0.3770.80) -2019/06/14 13:46:44 Blocking empty list... -2019/06/14 13:46:45 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:43.652922025 -0600 MDT m=+681.024950771] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:45.212745952 -0600 MDT m=+682.584774692]) -2019/06/14 13:46:45 Blocking empty list... -2019/06/14 13:46:46 Blocking empty list... -2019/06/14 13:46:46 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:45.212745952 -0600 MDT m=+682.584774692] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:46.779907351 -0600 MDT m=+684.151936105]) -2019/06/14 13:46:47 Blocking empty list... -2019/06/14 13:46:48 Blocking empty list... -2019/06/14 13:46:48 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:46.779907351 -0600 MDT m=+684.151936105] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:48.37493185 -0600 MDT m=+685.746960593]) -2019/06/14 13:46:49 Blocking empty list... -2019/06/14 13:46:50 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:48.37493185 -0600 MDT m=+685.746960593] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:50.006089325 -0600 MDT m=+687.378118062]) -2019/06/14 13:46:50 Blocking empty list... -2019/06/14 13:46:51 Blocking empty list... -2019/06/14 13:46:51 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:50.006089325 -0600 MDT m=+687.378118062] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:51.571964801 -0600 MDT m=+688.943993546]) -2019/06/14 13:46:52 Blocking empty list... -2019/06/14 13:46:53 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:51.571964801 -0600 MDT m=+688.943993546] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:53.168928243 -0600 MDT m=+690.540956989]) -2019/06/14 13:46:53 Blocking empty list... -2019/06/14 13:46:54 Blocking empty list... -2019/06/14 13:46:54 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:53.168928243 -0600 MDT m=+690.540956989] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:54.746981537 -0600 MDT m=+692.119010284]) -2019/06/14 13:46:55 Blocking empty list... -2019/06/14 13:46:56 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:54.746981537 -0600 MDT m=+692.119010284] == [bid:Sold! title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:56.312143023 -0600 MDT m=+693.684171758]) -2019/06/14 13:46:56 Blocking empty list... -2019/06/14 13:46:57 Blocking empty list... -2019/06/14 13:46:57 DETAIL 107,847 - Actual 157,979 - Exempt -2019/06/14 13:46:57 false = ([bid:Sold! title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:56.312143023 -0600 MDT m=+693.684171758] == [bid:Next Item on title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:57.92401858 -0600 MDT m=+695.296047330]) -2019/06/14 13:46:57 DETAIL 107,847 - Actual 157,979 - Exempt -2019/06/14 13:46:58 TOP -2019/06/14 13:46:58 Blocking empty list... -2019/06/14 13:46:58 C [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:46:58.636284949 -0600 MDT m=+696.008313695] -2019/06/14 13:46:59 Blocking empty list... -2019/06/14 13:47:00 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:46:58.636284949 -0600 MDT m=+696.008313695] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:00.228379187 -0600 MDT m=+697.600407934]) -2019/06/14 13:47:00 Blocking empty list... -2019/06/14 13:47:01 Blocking empty list... -2019/06/14 13:47:01 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:00.228379187 -0600 MDT m=+697.600407934] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:01.828705581 -0600 MDT m=+699.200734322]) -2019/06/14 13:47:02 Blocking empty list... -2019/06/14 13:47:03 Blocking empty list... -2019/06/14 13:47:03 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:01.828705581 -0600 MDT m=+699.200734322] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:03.404720678 -0600 MDT m=+700.776749424]) -2019/06/14 13:47:04 Blocking empty list... -2019/06/14 13:47:04 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:03.404720678 -0600 MDT m=+700.776749424] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:04.995027354 -0600 MDT m=+702.367056092]) -2019/06/14 13:47:05 Blocking empty list... -2019/06/14 13:47:06 Blocking empty list... -2019/06/14 13:47:06 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:04.995027354 -0600 MDT m=+702.367056092] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:06.553799294 -0600 MDT m=+703.925828028]) -2019/06/14 13:47:07 Blocking empty list... -2019/06/14 13:47:08 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:06.553799294 -0600 MDT m=+703.925828028] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:08.135736901 -0600 MDT m=+705.507765668]) -2019/06/14 13:47:08 Blocking empty list... -2019/06/14 13:47:09 Blocking empty list... -2019/06/14 13:47:09 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:08.135736901 -0600 MDT m=+705.507765668] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:09.740053433 -0600 MDT m=+707.112082171]) -2019/06/14 13:47:10 Blocking empty list... -2019/06/14 13:47:11 Blocking empty list... -2019/06/14 13:47:11 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:09.740053433 -0600 MDT m=+707.112082171] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:11.355342645 -0600 MDT m=+708.727371404]) -2019/06/14 13:47:12 Blocking empty list... -2019/06/14 13:47:12 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:11.355342645 -0600 MDT m=+708.727371404] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:12.953509692 -0600 MDT m=+710.325538426]) -2019/06/14 13:47:13 Blocking empty list... -2019/06/14 13:47:14 Blocking empty list... -2019/06/14 13:47:14 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:12.953509692 -0600 MDT m=+710.325538426] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:14.544215968 -0600 MDT m=+711.916244711]) -2019/06/14 13:47:15 Blocking empty list... -2019/06/14 13:47:16 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:14.544215968 -0600 MDT m=+711.916244711] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:16.111428829 -0600 MDT m=+713.483457570]) -2019/06/14 13:47:16 Blocking empty list... -2019/06/14 13:47:17 Blocking empty list... -2019/06/14 13:47:17 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:16.111428829 -0600 MDT m=+713.483457570] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:17.744188889 -0600 MDT m=+715.116217639]) -2019/06/14 13:47:18 Blocking empty list... -2019/06/14 13:47:19 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:17.744188889 -0600 MDT m=+715.116217639] == [bid:Next Item on title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:19.31997218 -0600 MDT m=+716.692000915]) -2019/06/14 13:47:19 Blocking empty list... -2019/06/14 13:47:20 Blocking empty list... -2019/06/14 13:47:20 DETAIL $24,039 $7,664 -2019/06/14 13:47:20 false = ([bid:Next Item on title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:19.31997218 -0600 MDT m=+716.692000915] == [bid:$7,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:20.975960694 -0600 MDT m=+718.347989437]) -2019/06/14 13:47:20 DETAIL BLACK BLUE -2019/06/14 13:47:21 TOP -2019/06/14 13:47:21 Blocking empty list... -2019/06/14 13:47:21 C [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:21.632839693 -0600 MDT m=+719.004868430] -2019/06/14 13:47:22 Blocking empty list... -2019/06/14 13:47:23 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:21.632839693 -0600 MDT m=+719.004868430] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:23.246285645 -0600 MDT m=+720.618314400]) -2019/06/14 13:47:23 Blocking empty list... -2019/06/14 13:47:24 Blocking empty list... -2019/06/14 13:47:24 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:23.246285645 -0600 MDT m=+720.618314400] == [bid:$8,000 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:24.857513644 -0600 MDT m=+722.229542387]) -2019/06/14 13:47:25 Blocking empty list... -2019/06/14 13:47:26 Blocking empty list... -2019/06/14 13:47:26 true = ([bid:$8,000 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:24.857513644 -0600 MDT m=+722.229542387] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:26.442221476 -0600 MDT m=+723.814250212]) -2019/06/14 13:47:27 Blocking empty list... -2019/06/14 13:47:27 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:26.442221476 -0600 MDT m=+723.814250212] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:27.9990393 -0600 MDT m=+725.371068068]) -2019/06/14 13:47:28 Blocking empty list... -2019/06/14 13:47:29 Blocking empty list... -2019/06/14 13:47:29 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:27.9990393 -0600 MDT m=+725.371068068] == [bid:$8,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:29.61021549 -0600 MDT m=+726.982244236]) -2019/06/14 13:47:30 Blocking empty list... -2019/06/14 13:47:31 true = ([bid:$8,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:29.61021549 -0600 MDT m=+726.982244236] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:31.217544509 -0600 MDT m=+728.589573280]) -2019/06/14 13:47:31 Blocking empty list... -2019/06/14 13:47:32 Blocking empty list... -2019/06/14 13:47:32 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:31.217544509 -0600 MDT m=+728.589573280] == [bid:$8,400 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:32.789748968 -0600 MDT m=+730.161777737]) -2019/06/14 13:47:33 Blocking empty list... -2019/06/14 13:47:34 Blocking empty list... -2019/06/14 13:47:34 true = ([bid:$8,400 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:32.789748968 -0600 MDT m=+730.161777737] == [bid:$8,400 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:34.359088515 -0600 MDT m=+731.731117253]) -2019/06/14 13:47:35 Blocking empty list... -2019/06/14 13:47:36 Blocking empty list... -2019/06/14 13:47:36 true = ([bid:$8,400 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:34.359088515 -0600 MDT m=+731.731117253] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:36.560628194 -0600 MDT m=+733.932656950]) -2019/06/14 13:47:37 Blocking empty list... -2019/06/14 13:47:38 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:36.560628194 -0600 MDT m=+733.932656950] == [bid:$8,600 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:38.175551491 -0600 MDT m=+735.547580230]) -2019/06/14 13:47:38 Blocking empty list... -2019/06/14 13:47:39 Blocking empty list... -2019/06/14 13:47:39 true = ([bid:$8,600 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:38.175551491 -0600 MDT m=+735.547580230] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:39.73534806 -0600 MDT m=+737.107376830]) -2019/06/14 13:47:40 Blocking empty list... -2019/06/14 13:47:41 Blocking empty list... -2019/06/14 13:47:41 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:39.73534806 -0600 MDT m=+737.107376830] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:41.333835964 -0600 MDT m=+738.705864712]) -2019/06/14 13:47:42 Blocking empty list... -2019/06/14 13:47:42 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:41.333835964 -0600 MDT m=+738.705864712] == [bid:$8,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:42.926327488 -0600 MDT m=+740.298356250]) -2019/06/14 13:47:43 Blocking empty list... -2019/06/14 13:47:44 Blocking empty list... -2019/06/14 13:47:44 true = ([bid:$8,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:42.926327488 -0600 MDT m=+740.298356250] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:44.493785479 -0600 MDT m=+741.865814216]) -2019/06/14 13:47:45 Blocking empty list... -2019/06/14 13:47:46 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:44.493785479 -0600 MDT m=+741.865814216] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:46.092736556 -0600 MDT m=+743.464765324]) -2019/06/14 13:47:46 Blocking empty list... -2019/06/14 13:47:47 Blocking empty list... -2019/06/14 13:47:47 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:46.092736556 -0600 MDT m=+743.464765324] == [bid:$9,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:47.67597531 -0600 MDT m=+745.048004045]) -2019/06/14 13:47:48 Blocking empty list... -2019/06/14 13:47:49 true = ([bid:$9,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:47.67597531 -0600 MDT m=+745.048004045] == [bid:$9,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:49.283213406 -0600 MDT m=+746.655242158]) -2019/06/14 13:47:49 Blocking empty list... -2019/06/14 13:47:50 Blocking empty list... -2019/06/14 13:47:50 true = ([bid:$9,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:49.283213406 -0600 MDT m=+746.655242158] == [bid:$9,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:50.867335397 -0600 MDT m=+748.239364160]) -2019/06/14 13:47:51 Blocking empty list... -2019/06/14 13:47:52 Blocking empty list... -2019/06/14 13:47:52 true = ([bid:$9,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:50.867335397 -0600 MDT m=+748.239364160] == [bid:$9,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:52.436153467 -0600 MDT m=+749.808182224]) -2019/06/14 13:47:53 Blocking empty list... -2019/06/14 13:47:54 true = ([bid:$9,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:52.436153467 -0600 MDT m=+749.808182224] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:54.03762827 -0600 MDT m=+751.409657021]) -2019/06/14 13:47:54 Blocking empty list... -2019/06/14 13:47:55 Blocking empty list... -2019/06/14 13:47:55 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:54.03762827 -0600 MDT m=+751.409657021] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:55.599953643 -0600 MDT m=+752.971982388]) -2019/06/14 13:47:56 Blocking empty list... -2019/06/14 13:47:57 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:55.599953643 -0600 MDT m=+752.971982388] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:57.206392983 -0600 MDT m=+754.578421720]) -2019/06/14 13:47:57 Blocking empty list... -2019/06/14 13:47:58 Blocking empty list... -2019/06/14 13:47:58 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:57.206392983 -0600 MDT m=+754.578421720] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:58.788865612 -0600 MDT m=+756.160894358]) -2019/06/14 13:47:59 Blocking empty list... -2019/06/14 13:48:00 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:58.788865612 -0600 MDT m=+756.160894358] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:00.334639215 -0600 MDT m=+757.706667963]) -2019/06/14 13:48:00 Blocking empty list... -2019/06/14 13:48:01 Blocking empty list... -2019/06/14 13:48:01 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:00.334639215 -0600 MDT m=+757.706667963] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:01.910710068 -0600 MDT m=+759.282738803]) -2019/06/14 13:48:02 Blocking empty list... -2019/06/14 13:48:03 Blocking empty list... -2019/06/14 13:48:03 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:01.910710068 -0600 MDT m=+759.282738803] == [bid:$9,600 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:03.504547263 -0600 MDT m=+760.876576007]) -2019/06/14 13:48:04 Blocking empty list... -2019/06/14 13:48:05 true = ([bid:$9,600 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:03.504547263 -0600 MDT m=+760.876576007] == [bid:$9,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:05.075648795 -0600 MDT m=+762.447677531]) -2019/06/14 13:48:05 Blocking empty list... -2019/06/14 13:48:06 Blocking empty list... -2019/06/14 13:48:06 true = ([bid:$9,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:05.075648795 -0600 MDT m=+762.447677531] == [bid:$9,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:06.677601587 -0600 MDT m=+764.049630333]) -2019/06/14 13:48:07 Blocking empty list... -2019/06/14 13:48:08 true = ([bid:$9,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:06.677601587 -0600 MDT m=+764.049630333] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:08.243314838 -0600 MDT m=+765.615343582]) -2019/06/14 13:48:08 Blocking empty list... -2019/06/14 13:48:09 Blocking empty list... -2019/06/14 13:48:09 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:08.243314838 -0600 MDT m=+765.615343582] == [bid:$9,800 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:09.816861858 -0600 MDT m=+767.188890627]) -2019/06/14 13:48:10 Blocking empty list... -2019/06/14 13:48:11 Blocking empty list... -2019/06/14 13:48:11 true = ([bid:$9,800 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:09.816861858 -0600 MDT m=+767.188890627] == [bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:11.401970852 -0600 MDT m=+768.773999592]) -2019/06/14 13:48:12 Blocking empty list... -2019/06/14 13:48:13 Blocking empty list... -2019/06/14 13:48:13 true = ([bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:11.401970852 -0600 MDT m=+768.773999592] == [bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:13.385943303 -0600 MDT m=+770.757972044]) -2019/06/14 13:48:14 Blocking empty list... -2019/06/14 13:48:15 true = ([bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:13.385943303 -0600 MDT m=+770.757972044] == [bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:15.010900934 -0600 MDT m=+772.382929685]) -2019/06/14 13:48:15 Blocking empty list... -2019/06/14 13:48:16 Blocking empty list... -2019/06/14 13:48:16 true = ([bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:15.010900934 -0600 MDT m=+772.382929685] == [bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:16.582646794 -0600 MDT m=+773.954675536]) -2019/06/14 13:48:17 Blocking empty list... -2019/06/14 13:48:18 true = ([bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:16.582646794 -0600 MDT m=+773.954675536] == [bid:$10,000 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:18.158918859 -0600 MDT m=+775.530947603]) -2019/06/14 13:48:18 Blocking empty list... -2019/06/14 13:48:19 Blocking empty list... -2019/06/14 13:48:19 true = ([bid:$10,000 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:18.158918859 -0600 MDT m=+775.530947603] == [bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:19.762418285 -0600 MDT m=+777.134447038]) -2019/06/14 13:48:20 Blocking empty list... -2019/06/14 13:48:21 Blocking empty list... -2019/06/14 13:48:21 true = ([bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:19.762418285 -0600 MDT m=+777.134447038] == [bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:21.358132544 -0600 MDT m=+778.730161288]) -2019/06/14 13:48:22 Blocking empty list... -2019/06/14 13:48:22 true = ([bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:21.358132544 -0600 MDT m=+778.730161288] == [bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:22.960404858 -0600 MDT m=+780.332433601]) -2019/06/14 13:48:23 Blocking empty list... -2019/06/14 13:48:24 Blocking empty list... -2019/06/14 13:48:24 true = ([bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:22.960404858 -0600 MDT m=+780.332433601] == [bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:24.549422086 -0600 MDT m=+781.921450823]) -2019/06/14 13:48:25 Blocking empty list... -2019/06/14 13:48:26 true = ([bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:24.549422086 -0600 MDT m=+781.921450823] == [bid:$10,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:26.125843233 -0600 MDT m=+783.497871975]) -2019/06/14 13:48:26 Blocking empty list... -2019/06/14 13:48:27 Blocking empty list... -2019/06/14 13:48:27 true = ([bid:$10,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:26.125843233 -0600 MDT m=+783.497871975] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:27.690221589 -0600 MDT m=+785.062250326]) -2019/06/14 13:48:28 Blocking empty list... -2019/06/14 13:48:29 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:27.690221589 -0600 MDT m=+785.062250326] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:29.264012162 -0600 MDT m=+786.636040912]) -2019/06/14 13:48:29 Blocking empty list... -2019/06/14 13:48:30 Blocking empty list... -2019/06/14 13:48:30 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:29.264012162 -0600 MDT m=+786.636040912] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:30.816621488 -0600 MDT m=+788.188650236]) -2019/06/14 13:48:31 Blocking empty list... -2019/06/14 13:48:32 Blocking empty list... -2019/06/14 13:48:33 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:30.816621488 -0600 MDT m=+788.188650236] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:33.096096709 -0600 MDT m=+790.468125473]) -2019/06/14 13:48:33 Blocking empty list... -2019/06/14 13:48:34 Blocking empty list... -2019/06/14 13:48:34 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:33.096096709 -0600 MDT m=+790.468125473] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:34.681657183 -0600 MDT m=+792.053685940]) -2019/06/14 13:48:35 Blocking empty list... -2019/06/14 13:48:36 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:34.681657183 -0600 MDT m=+792.053685940] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:36.241164634 -0600 MDT m=+793.613193386]) -2019/06/14 13:48:36 Blocking empty list... -2019/06/14 13:48:37 Blocking empty list... -2019/06/14 13:48:37 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:36.241164634 -0600 MDT m=+793.613193386] == [bid:Bonus title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:37.85757393 -0600 MDT m=+795.229602667]) -2019/06/14 13:48:38 Blocking empty list... -2019/06/14 13:48:39 Blocking empty list... -2019/06/14 13:48:39 true = ([bid:Bonus title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:37.85757393 -0600 MDT m=+795.229602667] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:39.441577958 -0600 MDT m=+796.813606720]) -2019/06/14 13:48:40 Blocking empty list... -2019/06/14 13:48:41 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:39.441577958 -0600 MDT m=+796.813606720] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:41.061072437 -0600 MDT m=+798.433101174]) -2019/06/14 13:48:41 Blocking empty list... -2019/06/14 13:48:42 Blocking empty list... -2019/06/14 13:48:42 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:41.061072437 -0600 MDT m=+798.433101174] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:42.682457336 -0600 MDT m=+800.054486086]) -2019/06/14 13:48:43 Blocking empty list... -2019/06/14 13:48:44 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:42.682457336 -0600 MDT m=+800.054486086] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:44.256806707 -0600 MDT m=+801.628835462]) -2019/06/14 13:48:44 Blocking empty list... -2019/06/14 13:48:45 Blocking empty list... -2019/06/14 13:48:45 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:44.256806707 -0600 MDT m=+801.628835462] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:45.967221097 -0600 MDT m=+803.339249831]) -2019/06/14 13:48:46 Blocking empty list... -2019/06/14 13:48:47 Blocking empty list... -2019/06/14 13:48:47 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:45.967221097 -0600 MDT m=+803.339249831] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:47.517339333 -0600 MDT m=+804.889368069]) -2019/06/14 13:48:48 Blocking empty list... -2019/06/14 13:48:48 parse watched -2019/06/14 13:48:49 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:47.517339333 -0600 MDT m=+804.889368069] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:49.118780967 -0600 MDT m=+806.490809704]) -2019/06/14 13:48:49 Blocking empty list... -2019/06/14 13:48:50 parse watched -2019/06/14 13:48:50 Blocking empty list... -2019/06/14 13:48:50 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:49.118780967 -0600 MDT m=+806.490809704] == [bid:Next Item on title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:50.667028521 -0600 MDT m=+808.039057254]) -2019/06/14 13:48:51 Blocking empty list... -2019/06/14 13:48:51 parse watched -2019/06/14 13:48:52 DETAIL $7,689 $24,039 -2019/06/14 13:48:52 false = ([bid:Next Item on title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:50.667028521 -0600 MDT m=+808.039057254] == [bid:$1,650 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:52.297679181 -0600 MDT m=+809.669707932]) -2019/06/14 13:48:52 DETAIL 1.8L 4 3.6L 6 -2019/06/14 13:48:52 Blocking empty list... -2019/06/14 13:48:52 TOP -2019/06/14 13:48:52 parse watched -2019/06/14 13:48:52 C [bid:$1,650 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:52.994021004 -0600 MDT m=+810.366049754] -2019/06/14 13:48:53 Blocking empty list... -2019/06/14 13:48:54 parse watched -2019/06/14 13:48:54 Blocking empty list... -2019/06/14 13:48:54 true = ([bid:$1,650 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:52.994021004 -0600 MDT m=+810.366049754] == [bid:Bid title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:54.583269582 -0600 MDT m=+811.955298323]) -2019/06/14 13:48:55 Blocking empty list... -2019/06/14 13:48:55 parse watched -2019/06/14 13:48:56 true = ([bid:Bid title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:54.583269582 -0600 MDT m=+811.955298323] == [bid:$1,700 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:56.181033887 -0600 MDT m=+813.553062652]) -2019/06/14 13:48:56 Blocking empty list... -2019/06/14 13:48:57 parse watched -2019/06/14 13:48:57 Blocking empty list... -2019/06/14 13:48:57 true = ([bid:$1,700 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:56.181033887 -0600 MDT m=+813.553062652] == [bid:$1,800 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:57.784934977 -0600 MDT m=+815.156963727]) -2019/06/14 13:48:58 Blocking empty list... -2019/06/14 13:48:58 parse watched -2019/06/14 13:48:59 Blocking empty list... -2019/06/14 13:48:59 true = ([bid:$1,800 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:57.784934977 -0600 MDT m=+815.156963727] == [bid:$1,850 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:59.373646279 -0600 MDT m=+816.745675026]) -2019/06/14 13:49:00 Blocking empty list... -2019/06/14 13:49:00 parse watched -2019/06/14 13:49:00 true = ([bid:$1,850 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:59.373646279 -0600 MDT m=+816.745675026] == [bid:$1,900 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:49:00.956853996 -0600 MDT m=+818.328882743]) -2019/06/14 13:49:01 Blocking empty list... -2019/06/14 13:49:02 parse watched -2019/06/14 13:49:02 Blocking empty list... -2019/06/14 13:49:02 true = ([bid:$1,900 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:49:00.956853996 -0600 MDT m=+818.328882743] == [bid:Bid title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:49:02.537892071 -0600 MDT m=+819.909920818]) -2019/06/14 13:49:03 Blocking empty list... -2019/06/14 13:49:03 stale element reference: stale element reference: element is not attached to the page document - (Session info: chrome=75.0.3770.80) -2019/06/14 13:49:04 Blocking empty list... -2019/06/14 13:49:05 Blocking empty list... -2019/06/14 13:49:06 Blocking empty list... diff --git a/copart/auction/.auction.go b/copart/auction/.auction.go deleted file mode 100644 index 8b3f35d..0000000 --- a/copart/auction/.auction.go +++ /dev/null @@ -1,132 +0,0 @@ -package auction - -import ( - "encoding/json" - "local/sandbox/selenium/copart/copart/browser" - "local/sandbox/selenium/copart/copart/config" - "log" - "time" - - "github.com/tebeka/selenium" -) - -type Auction struct { - browser *browser.Browser - cars []*Car - stop bool - stopped bool -} - -func New(url string) (*Auction, error) { - b, err := browser.New() - if err != nil { - b.Close() - return nil, err - } - if err := b.Get(url); err != nil { - b.Close() - return nil, err - } - - var elems []selenium.WebElement - deadline := time.Now().Add(time.Second * 10) // TODO ctx configurable and load more later - for deadline.After(time.Now()) { - time.Sleep(time.Second) - elems, err = b.Driver.FindElements("xpath", "//iframe") - if err != nil { - b.Close() - return nil, err - } - if len(elems) > 0 { - break - } - } - if time.Now().After(deadline) { - b.Close() - return nil, b.Close() - } - url, err = elems[0].GetAttribute("src") - if err != nil { - b.Close() - return nil, err - } - if err := b.Get(url); err != nil { - b.Close() - return nil, err - } - - return &Auction{ - browser: b, - cars: []*Car{}, - }, nil -} - -func (a *Auction) Start() error { - log.Println("START", a.stop) - go func() { - defer func() { - a.stopped = true - }() - for !a.stop { - log.Println("TOP") - c := NewCar() - if err := c.Parse(a.browser.Driver); err != nil { - log.Println(err) - return - } - log.Println("C", c) - for !a.stop { - time.Sleep(time.Second) - d := NewCar() - if err := d.Parse(a.browser.Driver); err != nil { - log.Println(err) - return - } - log.Printf("%v = (%v == %v)", c.Equals(d), c.String(), d.String()) - if !c.Equals(d) { - break - } - c = d - } - b, err := c.Encode() - if err != nil { - log.Println(err) - return - } - if err := config.Values().DB.Set(c.String(), b); err != nil { - log.Println(err) - return - } - var list []string - if b, err := config.Values().DB.Get("LIST"); err != nil { - log.Println(err) - return - } else if err := json.Unmarshal(b, &list); err != nil { - log.Println(err) - return - } else { - list = append(list, c.String()) - b, _ := json.Marshal(list) - if err := config.Values().DB.Set("LIST", b); err != nil { - log.Println(err) - return - } - } - } - }() - return nil -} - -func (a *Auction) Stop() error { - if a == nil { - return nil - } - a.stop = true - for !a.stopped { - time.Sleep(time.Second) - } - if a.browser == nil || a.browser.Driver == nil { - return nil - } - return a.browser.Driver.Close() -} diff --git a/copart/auction/auction.go b/copart/auction/auction.go deleted file mode 100644 index 30b0f01..0000000 --- a/copart/auction/auction.go +++ /dev/null @@ -1,222 +0,0 @@ -package auction - -import ( - "context" - "encoding/json" - "errors" - "local/sandbox/selenium/copart/copart/browser" - "local/sandbox/selenium/copart/copart/config" - "local/storage" - "log" - "strconv" - "strings" - "time" -) - -type Auction struct { - browser *browser.Browser - cars chan *Car - ctx context.Context - can context.CancelFunc - routines chan struct{} -} - -func New(b *browser.Browser, url string) (*Auction, error) { - if err := b.Get(url); err != nil { - b.Close() - return nil, err - } - - ctx, can := context.WithTimeout(context.Background(), time.Second*10) - defer can() - - var elem WebElement - for err := ctx.Err(); err == nil; err = ctx.Err() { - elem, err = b.Driver.FindElement("xpath", "//iframe") - if err == nil { - break - } - time.Sleep(time.Second) - } - if err := ctx.Err(); err != nil { - b.Close() - return nil, err - } - - iframeURL, err := elem.GetAttribute("src") - if err != nil { - b.Close() - return nil, err - } else if iframeURL == "" { - b.Close() - return nil, errors.New("auction iframe has no src") - } - - if err := b.Get(iframeURL); err != nil { - b.Close() - return nil, err - } - - ctx, can = context.WithCancel(context.Background()) - return &Auction{ - browser: b, - cars: make(chan *Car), - ctx: ctx, - can: can, - routines: make(chan struct{}, 5), - }, nil -} - -func (a *Auction) Start() error { - go a.parseCars() - a.routines <- struct{}{} - go a.saveCars() - a.routines <- struct{}{} - return nil -} - -func (a *Auction) parseCars() error { - log.Printf("[parseCars] starting") - defer func() { - if err := recover(); err != nil { - log.Println("[parseCars] recover:", err) - } - log.Printf("[parseCars] stopping") - close(a.cars) - a.can() - a.routines <- struct{}{} - }() - for err := a.ctx.Err(); err == nil; err = a.ctx.Err() { - c, err := a.nextCar() - if err != nil { - panic(err) - } - log.Printf("[parseCars] found car %v", c.String()) - if !strings.Contains(c.Bid, "$") { - continue - } - if b, _ := c.MarshalJSON(); strings.Contains(strings.ToLower(string(b)), ", hi") { - continue - } else if strings.Contains(strings.ToLower(string(b)), "guam") { - continue - } else if len(c.Title) < 4 { - continue - } else if v, err := strconv.Atoi(c.Title[:4]); err != nil { - continue - } else if v+5 < time.Now().Year() { - continue - } - select { - case a.cars <- c: - case <-a.ctx.Done(): - panic(a.ctx.Err()) - } - } - return a.ctx.Err() -} - -func (a *Auction) nextCar() (*Car, error) { - c := NewCar() - if err := c.Parse(a.browser.Driver); err != nil { - if !strings.Contains(err.Error(), "stale element") { - return nil, err - } else { - return a.nextCar() - } - } - for err := a.ctx.Err(); err == nil; err = a.ctx.Err() { - time.Sleep(time.Second * 2) - d := NewCar() - if err := d.Parse(a.browser.Driver); err != nil { - if !strings.Contains(err.Error(), "stale element") { - return nil, err - } - } - if !c.Equals(d) { - return c, nil - } - if d.Bid != "" { - c = d - } - } - return nil, a.ctx.Err() -} - -func (a *Auction) saveCars() error { - log.Printf("[saveCars] starting") - defer func() { - if err := recover(); err != nil { - log.Println("[saveCars] recover:", err) - } - log.Printf("[saveCars] stopping") - a.can() - a.routines <- struct{}{} - }() - for err := a.ctx.Err(); err == nil; err = a.ctx.Err() { - select { - case <-a.ctx.Done(): - panic(a.ctx.Err()) - case c := <-a.cars: - go func(d *Car) { - if d == nil { - return - } - log.Printf("[saveCars] saving %v", d.String()) - if err := a.saveCar(d); err != nil { - log.Printf("[saveCars] err: %v", err) - } - }(c) - } - } - return a.ctx.Err() -} - -func (a *Auction) saveCar(c *Car) error { - db := config.Values().DB - - b, err := c.Encode() - if err != nil { - return err - } - - if err := db.Set(c.String(), b); err != nil { - return err - } - - var list []string - b, err = db.Get("LIST") - if err == storage.ErrNotFound { - b = []byte("[]") - } else if err != nil { - return err - } - if err := json.Unmarshal(b, &list); err != nil { - return err - } - - list = append([]string{c.String()}, list...) - if b, err := json.Marshal(list); err != nil { - return err - } else if err := db.Set("LIST", b); err != nil { - return err - } - - return nil -} - -func (a *Auction) Stop() error { - l := len(a.routines) - a.can() - ctx, can := context.WithTimeout(context.Background(), time.Second*5) - defer can() - for i := 0; i < 2*l; i++ { - select { - case <-a.routines: - case <-ctx.Done(): - } - } - if len(a.routines) > 0 { - return errors.New("not all routines exited") - } - return nil -} diff --git a/copart/auction/auction_test.go b/copart/auction/auction_test.go deleted file mode 100644 index ee58cde..0000000 --- a/copart/auction/auction_test.go +++ /dev/null @@ -1,185 +0,0 @@ -package auction - -import ( - "context" - "crypto/rand" - "fmt" - "local/sandbox/selenium/copart/copart/browser" - "local/sandbox/selenium/copart/copart/config" - "math/big" - "net/url" - "os" - "strings" - "sync" - "testing" - "time" -) - -func randStr() string { - n := 3 - letters := "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" - k := big.NewInt(int64(len(letters))) - b := make([]byte, n) - for i := 0; i < n; i++ { - j, _ := rand.Int(rand.Reader, k) - b[i] = letters[int(j.Int64())] - } - return string(b) -} - -func randomAuctionBody() []browser.MockElement { - return []browser.MockElement{browser.MockElement{ - Attrs: map[string]string{ - "src": "anything", - }, - Ret: map[string][]browser.MockElement{ - "//bidding-dialer-refactor": []browser.MockElement{browser.MockElement{ - Ret: map[string][]browser.MockElement{ - "text": []browser.MockElement{browser.MockElement{ - Txt: "$bid" + randStr(), - }}, - }, - }}, - "//lot-details-primary-refactored": []browser.MockElement{browser.MockElement{ - Ret: map[string][]browser.MockElement{ - "label": []browser.MockElement{browser.MockElement{ - Txt: "label" + randStr(), - Ret: map[string][]browser.MockElement{ - "../div[1]": []browser.MockElement{browser.MockElement{ - Txt: "value" + randStr(), - }}, - }, - }}, - }, - }}, - "//lot-details-secondary-refactored": []browser.MockElement{browser.MockElement{ - Ret: map[string][]browser.MockElement{ - "label": []browser.MockElement{browser.MockElement{ - Txt: "label" + randStr(), - Ret: map[string][]browser.MockElement{ - "../div[1]": []browser.MockElement{browser.MockElement{ - Txt: "value" + randStr(), - }}, - }, - }}, - }, - }}, - "//ngx-carousel": []browser.MockElement{browser.MockElement{ - Ret: map[string][]browser.MockElement{ - "ngx-item": []browser.MockElement{}, - }, - }}, - "//lot-header": []browser.MockElement{browser.MockElement{ - Ret: map[string][]browser.MockElement{ - "section": []browser.MockElement{browser.MockElement{ - Ret: map[string][]browser.MockElement{ - "div": []browser.MockElement{browser.MockElement{ - Ret: map[string][]browser.MockElement{ - "div": []browser.MockElement{browser.MockElement{ - Txt: "title" + randStr(), - }}, - }, - }}, - }, - }}, - }, - }}, - "//widget-header-sale": []browser.MockElement{browser.MockElement{ - Ret: map[string][]browser.MockElement{ - ".//div[@class=\"watchlist\"]": []browser.MockElement{}, - }, - }}, - }, - }} -} - -func mockAuction() (*Auction, context.CancelFunc) { - m := &sync.Map{} - r := randomAuctionBody() - m.Store("body", r) - go func() { - time.Sleep(time.Second * 2) - m.Store("//iframe", r) - }() - driver := browser.NewMockDriver(m) - ctx, can := context.WithCancel(context.Background()) - go func() { - for ctx.Err() == nil { - time.Sleep(time.Millisecond * 100) - m.Store("body", randomAuctionBody()) - } - }() - return &Auction{ - browser: &browser.Browser{Driver: driver}, - cars: make(chan *Car), - ctx: ctx, - can: can, - routines: make(chan struct{}, 5), - }, can -} - -func TestNewAuction(t *testing.T) { - a, can := mockAuction() - defer can() - b := a.browser - - if _, err := New(b, "any"); err != nil { - t.Fatal(err) - } -} - -func TestAuctionStartStop(t *testing.T) { - a, can := mockAuction() - defer can() - if err := a.Start(); err != nil { - t.Fatal(err) - } - if len(a.routines) != 2 { - t.Fatal("not 2 routines") - } - if err := a.Stop(); err != nil { - t.Fatal(err) - } -} - -func TestAuctionSaveCar(t *testing.T) { - os.Args = []string{"a", "-db", "map"} - config.New() - a, can := mockAuction() - defer can() - c := NewCar() - c.Bid = "123" - c.Title = "abc" - c.Details = map[string]string{ - "x": "y", - } - c.Images = []*Image{&Image{Src: &url.URL{Host: "img"}}} - d := NewCar() - if err := a.saveCar(c); err != nil { - t.Fatal(err) - } - if b, err := config.Values().DB.Get("LIST"); err != nil { - t.Fatal(err) - } else if !strings.Contains(string(b), c.String()) { - t.Fatal("list does not contain new car") - } - if b, err := config.Values().DB.Get(c.String()); err != nil { - t.Fatal(err) - } else if err := d.Decode(b); err != nil { - t.Fatal(err) - } else if !c.Equals(d) { - t.Fatal("saved car != fetched car") - } -} - -func TestAuctionNextCar(t *testing.T) { - os.Args = []string{"a", "-db", "map"} - config.New() - a, can := mockAuction() - defer can() - if c, err := a.nextCar(); err != nil { - t.Fatal(err) - } else if c == nil || fmt.Sprintf("%v", *c) == fmt.Sprintf("%v", Car{}) { - t.Fatal("parsed car is nil") - } -} diff --git a/copart/auction/car.go b/copart/auction/car.go deleted file mode 100644 index 677445f..0000000 --- a/copart/auction/car.go +++ /dev/null @@ -1,251 +0,0 @@ -package auction - -import ( - "bytes" - "encoding/gob" - "encoding/json" - "errors" - "fmt" - "net/url" - "strings" - "time" -) - -type Car struct { - Bid string - Details map[string]string - Images []*Image - Title string - Watched bool - TS time.Time -} - -type CarOption func(*Car) - -func NewCar(options ...CarOption) *Car { - c := &Car{ - Details: map[string]string{}, - Images: []*Image{}, - } - c.parseTS(nil) - for _, opt := range options { - opt(c) - } - return c -} - -func (c *Car) MarshalJSON() ([]byte, error) { - m := map[string]interface{}{} - m["bid"] = c.Bid - m["details"] = c.Details - m["images"] = c.Images - m["title"] = c.Title - m["TS"] = c.TS.Format("2006-01-02") - return json.Marshal(m) -} - -func (c *Car) Encode() ([]byte, error) { - buff := bytes.NewBuffer(nil) - enc := gob.NewEncoder(buff) - err := enc.Encode(c) - return buff.Bytes(), err -} - -func (c *Car) Decode(b []byte) error { - buff := bytes.NewBuffer(b) - enc := gob.NewDecoder(buff) - return enc.Decode(c) -} - -func (c *Car) Copy() *Car { - d := *c - return &d -} - -func (c *Car) Equals(d *Car) bool { - if c == d { - return true - } - if d == nil && c != nil { - return false - } - if c == nil && d != nil { - return false - } - for k, v := range c.Details { - if w, ok := d.Details[k]; ok && w != v { - return false - } - } - for k, v := range c.Details { - if w, ok := c.Details[k]; ok && w != v { - return false - } - } - if c.Title != d.Title { - return false - } - return true -} - -func (c *Car) String() string { - return fmt.Sprintf( - "[bid:%v title:%v watched:%v images:%v when:%v]", - c.Bid, - c.Title, - c.Watched, - len(c.Images), - c.TS, - ) -} - -func (c *Car) Parse(wd WebDriver) error { - we, err := wd.FindElement("tag name", "body") - if err != nil { - return err - } - do := []func(WebElement) error{ - c.parseTitle, - c.parseBid, - c.parseWatched, - c.parseImages, - c.parseDetails, - c.parseTS, - } - for _, d := range do { - if err := d(we); err != nil { - return err - } - } - return nil -} - -func (c *Car) parseTS(WebElement) error { - c.TS = time.Now() - return nil -} - -func (c *Car) parseBid(wd WebElement) error { - elem := waitForXPath(wd, "//bidding-dialer-refactor") - - elem, err := elem.FindElement("tag name", "text") - if err != nil { - return err - } - - text, err := elem.Text() - if err != nil { - return err - } - - if strings.Contains(text, "$") { - c.Bid = text - } - return nil -} - -func (c *Car) parseDetails(wd WebElement) error { - details := make(map[string]string) - - elems, err := wd.FindElements("tag name", "perfect-scrollbar") - if err != nil { - return err - } - if len(elems) > 2 { - elems = elems[:2] - } - - for _, elem := range elems { - labels, err := elem.FindElements("tag name", "label") - if err != nil { - return err - } - for _, label := range labels { - ltext, err := label.Text() - if err != nil { - return err - } - if ltext == "" { - continue - } - value, err := label.FindElement("xpath", "../div[1]") - if err != nil { - return err - } - vtext, err := value.Text() - if err != nil { - return err - } - - details[ltext] = vtext - } - } - - if len(details) > 0 { - c.Details = details - } - return nil -} - -func (c *Car) parseImages(wd WebElement) error { - elem := waitForXPath(wd, "//ngx-carousel") - - elems, err := elem.FindElements("tag name", "ngx-item") - if err != nil { - return err - } - if len(elems) == 0 { - return err - } - - images := make([]*Image, 0) - for _, elem := range elems { - elems, err := elem.FindElements("tag name", "img") - if err != nil { - return err - } - for _, img := range elems { - attr, err := img.GetAttribute("src") - if err != nil { - return err - } - url, err := url.Parse(attr) - if err != nil { - return err - } - images = append(images, NewImage(url)) - } - } - - c.Images = images - return nil -} - -func (c *Car) parseTitle(wd WebElement) error { - elem := waitForXPath(wd, "//lot-header") - - elem = followTags(elem, "section", "div", "div") - if elem == nil { - return errors.New("not found") - } - - text, err := elem.Text() - if err != nil { - return err - } - - c.Title = text - return nil -} - -func (c *Car) parseWatched(wd WebElement) error { - elem := waitForXPath(wd, "//widget-header-sale") - - elems, err := elem.FindElements("tag name", ".//div[@class=\"watchlist\"]") - if err != nil { - return err - } - - c.Watched = len(elems) > 0 - return nil -} diff --git a/copart/auction/car_test.go b/copart/auction/car_test.go deleted file mode 100644 index 4e669b2..0000000 --- a/copart/auction/car_test.go +++ /dev/null @@ -1,36 +0,0 @@ -package auction - -import "testing" - -func TestCar(t *testing.T) { - c := NewCar() - c.Title = "title" - c.Bid = "bid" - c.Watched = true - c.Details = map[string]string{"a": "b"} - d := c.Copy() - if !c.Equals(d) { - t.Errorf("equals failed post copy") - } - c.Details = map[string]string{"a": "c"} - if c.Equals(d) { - t.Errorf("equals passes post edit") - } - t.Log(c.String()) - - b, err := c.Encode() - if err != nil { - t.Fatal(err) - } - e := NewCar() - if err := e.Decode(b); err != nil { - t.Fatal(err) - } - if !c.Equals(e) { - t.Fatalf("decoded != encoded: %v vs %v", c, e) - } - - if _, err := c.MarshalJSON(); err != nil { - t.Fatal(err) - } -} diff --git a/copart/auction/image.go b/copart/auction/image.go deleted file mode 100644 index 322a37c..0000000 --- a/copart/auction/image.go +++ /dev/null @@ -1,39 +0,0 @@ -package auction - -import ( - "encoding/json" - "io/ioutil" - "net/http" - "net/url" - "os" -) - -type Image struct { - Raw []byte - Src *url.URL -} - -func NewImage(url *url.URL) *Image { - return &Image{ - Src: url, - } -} - -func (img *Image) MarshalJSON() ([]byte, error) { - return json.Marshal(img.Src.String()) -} - -func (img *Image) Fetch() error { - resp, err := http.Get(img.Src.String()) - if err != nil { - return err - } - defer resp.Body.Close() - Raw, err := ioutil.ReadAll(resp.Body) - img.Raw = Raw - return err -} - -func (img *Image) Save(path string) error { - return ioutil.WriteFile(path, img.Raw, os.ModePerm) -} diff --git a/copart/auction/today.go b/copart/auction/today.go deleted file mode 100644 index b2bae29..0000000 --- a/copart/auction/today.go +++ /dev/null @@ -1,231 +0,0 @@ -package auction - -import ( - "context" - "local/sandbox/selenium/copart/copart/browser" - "local/sandbox/selenium/copart/copart/config" - "local/storage" - "log" - "os" - "strings" - "syscall" - "time" - - "golang.org/x/time/rate" -) - -type Today struct { - today *browser.Browser - Auctions []*Auction - ctx context.Context - can context.CancelFunc - routines chan struct{} - sigc chan os.Signal -} - -func NewToday(sigc chan os.Signal) (*Today, error) { - today, err := today() - if err != nil { - today.Close() - return nil, err - } - - if _, err := config.Values().DB.Get("LIST"); err == storage.ErrNotFound { - if err := config.Values().DB.Set("LIST", []byte("[]")); err != nil { - today.Close() - return nil, err - } - } else if err != nil { - today.Close() - return nil, err - } - - deadline := time.Now() - deadline = deadline.Add(time.Hour * 24) - deadline = deadline.Add(time.Duration(-1*time.Now().Hour()) * time.Hour) - ctx, can := context.WithDeadline(context.Background(), deadline) - return &Today{ - today: today, - Auctions: make([]*Auction, 0), - ctx: ctx, - can: can, - routines: make(chan struct{}, 10), - sigc: sigc, - }, nil -} - -func today() (*browser.Browser, error) { - today, err := browser.New() - if err != nil { - return today, err - } - if err := today.Get("https://www.copart.com/todaysAuction/"); err != nil { - return today, err - } - return today, nil -} - -func (t *Today) Start() error { - ch := make(chan string) - go t.watchAuctionList(ch) - t.routines <- struct{}{} - go t.startAuctions(ch) - t.routines <- struct{}{} - return t.ctx.Err() -} - -func (t *Today) watchAuctionList(ch chan string) { - log.Printf("[watchAuctionList] starting") - defer func() { - if err := recover(); err != nil { - log.Println("[watchAuctionList] recover:", err) - } - log.Printf("[watchAuctionList] stopping") - t.routines <- struct{}{} - t.Stop() - }() - found := make(map[string]struct{}) - retryCD := 3 - for err := t.ctx.Err(); err == nil; err = t.ctx.Err() { - elems, err := t.today.Driver.FindElements("link text", "Join Auction") - if err != nil { - panic(err) - } - log.Printf("[watchAuctionList] found %v", len(elems)) - - for _, elem := range elems { - url, err := elem.GetAttribute("href") - if err != nil { - panic(err) - } - key := time.Now().Format("2006-01-02") + url - if _, ok := found[key]; ok { - log.Printf("[watchAuctionList] skipping %v", url) - continue - } - found[key] = struct{}{} - log.Printf("[watchAuctionList] sending %v", len(url)) - ch <- url - } - - log.Printf("[watchAuctionList] blocking 5 minutes") - select { - case <-t.ctx.Done(): - panic(t.ctx.Err()) - case <-time.After(time.Minute * 5): - retryCD -= 1 - if retryCD == 0 { - retryCD = 3 - for { - if t.ctx.Err() != nil { - panic(t.ctx.Err()) - } - err := t.today.Driver.Refresh() - if err == nil { - break - } - if strings.Contains(err.Error(), "timeout") { - select { - case <-time.After(time.Second * 15): - case <-t.ctx.Done(): - panic(t.ctx.Err()) - } - } - } - } - } - } -} - -func (t *Today) startAuctions(ch chan string) { - log.Printf("[startAuctions] starting") - defer func() { - if err := recover(); err != nil { - log.Println("[startAuctions] recover:", err) - } - log.Printf("[startAuctions] stopping") - t.routines <- struct{}{} - t.Stop() - }() - limiter := rate.NewLimiter(rate.Every(time.Second*15), 1) - for { - select { - case <-t.ctx.Done(): - panic(t.ctx.Err()) - case url := <-ch: - if err := limiter.Wait(t.ctx); err != nil { - panic(err) - } - log.Printf("[startAuctions] spawning %v", url) - b, err := browser.New() - if err != nil { - time.Sleep(time.Second * 15) - if err := limiter.Wait(t.ctx); err != nil { - panic(err) - } - b, err = browser.New() - if err != nil { - panic(err) - } - } - a, err := New(b, url) - if a != nil { - t.Auctions = append(t.Auctions, a) - } - if err != nil { - log.Println("[startAuctions] failed to New:", err) - } else if err := a.Start(); err != nil { - log.Println("[startAuctions] failed to New().Start:", err) - } else { - log.Printf("[startAuctions] spawned %v", url) - } - } - } -} - -func (t *Today) Stop() error { - last := make(chan error) - if t == nil { - return nil - } - l := len(t.routines) - t.can() - ctx, can := context.WithTimeout(context.Background(), time.Second*10) - defer can() - for i := 0; i < l*2; i++ { - select { - case <-t.routines: - case <-ctx.Done(): - select { - case last <- ctx.Err(): - default: - } - } - } - for _, a := range t.Auctions { - go func() { - if err := a.Stop(); err != nil { - select { - case last <- err: - case <-time.After(time.Second * 5): - } - } - }() - } - if err := t.today.Driver.Close(); err != nil { - select { - case last <- err: - default: - } - } - var err error - select { - case err = <-last: - case <-time.After(time.Second * 5): - } - select { - case t.sigc <- syscall.SIGHUP: - default: - } - return err -} diff --git a/copart/auction/webdriver.go b/copart/auction/webdriver.go deleted file mode 100644 index 274d906..0000000 --- a/copart/auction/webdriver.go +++ /dev/null @@ -1,46 +0,0 @@ -package auction - -import ( - "local/sandbox/selenium/copart/copart/browser" - "time" - - "github.com/tebeka/selenium" -) - -type WebDriver interface { - browser.WebDriver -} - -type WebElement interface { - selenium.WebElement -} - -func waitForXPath(wd WebElement, path string) selenium.WebElement { - var we selenium.WebElement - test := func() bool { - v, err := wd.FindElements("xpath", path) - if err != nil { - return false - } - if len(v) < 1 { - return false - } - we = v[0] - return true - } - for !test() { - time.Sleep(1) - } - return we -} - -func followTags(wd WebElement, tag ...string) selenium.WebElement { - for _, t := range tag { - var err error - wd, err = wd.FindElement("tag name", t) - if err != nil { - return nil - } - } - return wd -} diff --git a/copart/browser/browser.go b/copart/browser/browser.go deleted file mode 100644 index 6272908..0000000 --- a/copart/browser/browser.go +++ /dev/null @@ -1,71 +0,0 @@ -package browser - -import ( - "fmt" - "strings" - "time" - - "github.com/tebeka/selenium" -) - -type WebDriver interface { - Get(string) error - Quit() error - Close() error - FindElement(string, string) (selenium.WebElement, error) - FindElements(string, string) ([]selenium.WebElement, error) - Refresh() error -} - -type WebElement interface { - FindElement(string, string) (selenium.WebElement, error) - FindElements(string, string) ([]selenium.WebElement, error) - Text() (string, error) - GetAttribute(string) (string, error) -} - -type Browser struct { - Driver WebDriver -} - -func New() (*Browser, error) { - var Driver selenium.WebDriver - var err error - caps := selenium.Capabilities{"browserName": "chrome"} - //caps := selenium.Capabilities{"browserName": "firefox"} - for i := 0; i < 5; i++ { - Driver, err = selenium.NewRemote(caps, fmt.Sprintf("http://localhost:%v/wd/hub", 4444)) - if err != nil { - if strings.Contains(err.Error(), "connection refused") { - time.Sleep(time.Second * time.Duration(i+1)) - continue - } - if strings.Contains(err.Error(), "timeout") { - time.Sleep(time.Second * time.Duration(i+1)) - continue - } - return nil, err - } - } - - return &Browser{ - Driver: Driver, - }, err -} - -func (b *Browser) Get(addr string) error { - return b.Driver.Get(addr) -} - -func (b *Browser) Close() error { - if b == nil || b.Driver == nil { - return nil - } - if err := b.Driver.Close(); err != nil { - return err - } - if err := b.Driver.Quit(); err != nil { - return err - } - return nil -} diff --git a/copart/browser/browser_test.go b/copart/browser/browser_test.go deleted file mode 100644 index 245e504..0000000 --- a/copart/browser/browser_test.go +++ /dev/null @@ -1,25 +0,0 @@ -package browser - -import ( - "testing" -) - -func TestNew(t *testing.T) { - browser, err := New() - if err != nil { - t.Fatal(err) - } - defer browser.Close() - - if err := browser.Driver.Get("https://www.google.com"); err != nil { - t.Fatal(err) - } - - elem, err := browser.Driver.FindElement("tag name", "body") - if err != nil { - t.Fatal(err) - } - if elem == nil { - t.Fatal(err) - } -} diff --git a/copart/browser/mockselenium.go b/copart/browser/mockselenium.go deleted file mode 100644 index 6ddc6dd..0000000 --- a/copart/browser/mockselenium.go +++ /dev/null @@ -1,91 +0,0 @@ -package browser - -import ( - "errors" - "local/storage" - "sync" - - "github.com/tebeka/selenium" -) - -type MockDriver struct { - Ret *sync.Map -} - -var notImpl = errors.New("not impl") - -func (wd MockDriver) Quit() error { return nil } -func (wd MockDriver) Close() error { return nil } -func (wd MockDriver) Get(string) error { return nil } -func (wd MockDriver) GetCookies() ([]selenium.Cookie, error) { return []selenium.Cookie{}, nil } -func (wd MockDriver) GetCookie(string) (selenium.Cookie, error) { return selenium.Cookie{}, nil } -func (wd MockDriver) AddCookie(*selenium.Cookie) error { return nil } -func (wd MockDriver) FindElement(_ string, key string) (selenium.WebElement, error) { - v, err := wd.FindElements("", key) - if err != nil { - return nil, err - } - return v[0], nil -} -func (wd MockDriver) FindElements(_ string, key string) ([]selenium.WebElement, error) { - we := []selenium.WebElement{} - if v, ok := wd.Ret.Load(key); ok { - w, _ := v.([]MockElement) - for i := range w { - we = append(we, w[i]) - } - return we, nil - } - return nil, storage.ErrNotFound -} - -type MockElement struct { - selenium.WebElement - Ret map[string][]MockElement - Txt string - Attrs map[string]string -} - -func (we MockElement) FindElement(_ string, key string) (selenium.WebElement, error) { - v, err := we.FindElements("", key) - if err != nil { - return nil, err - } - return v[0], nil -} -func (we MockElement) FindElements(_ string, key string) ([]selenium.WebElement, error) { - elems := []selenium.WebElement{} - if v, ok := we.Ret[key]; ok { - for i := range v { - elems = append(elems, v[i]) - } - return elems, nil - } - return nil, storage.ErrNotFound -} -func (we MockElement) Text() (string, error) { return we.Txt, nil } -func (we MockElement) GetAttribute(key string) (string, error) { - v, _ := we.Attrs[key] - return v, nil -} - -func (we MockElement) Click() error { return notImpl } -func (we MockElement) SendKeys(keys string) error { return notImpl } -func (we MockElement) Submit() error { return notImpl } -func (we MockElement) Clear() error { return notImpl } -func (we MockElement) MoveTo(int, int) error { return notImpl } -func (we MockElement) TagName() (string, error) { return "", notImpl } -func (we MockElement) IsSelected() (bool, error) { return false, notImpl } -func (we MockElement) IsEnabled() (bool, error) { return false, notImpl } -func (we MockElement) IsDisplayed() (bool, error) { return false, notImpl } -func (we MockElement) Location() (*selenium.Point, error) { return nil, notImpl } -func (we MockElement) LocationInView() (*selenium.Point, error) { return nil, notImpl } -func (we MockElement) Size() (*selenium.Size, error) { return nil, notImpl } -func (we MockElement) CSSProperty(name string) (string, error) { return "", notImpl } -func (we MockElement) Screenshot(bool) ([]byte, error) { return nil, notImpl } - -func NewMockDriver(elements *sync.Map) *MockDriver { - return &MockDriver{ - Ret: elements, - } -} diff --git a/copart/browser/mockselenium_test.go b/copart/browser/mockselenium_test.go deleted file mode 100644 index 9665ff2..0000000 --- a/copart/browser/mockselenium_test.go +++ /dev/null @@ -1,17 +0,0 @@ -package browser - -import ( - "testing" - - "github.com/tebeka/selenium" -) - -func TestMockSeleniumInterfaces(t *testing.T) { - var wd WebDriver - wd = MockDriver{} - - var we selenium.WebElement - we = MockElement{} - - t.Log(wd, we) -} diff --git a/copart/endpoint_test.go b/copart/endpoint_test.go deleted file mode 100644 index c3a0fe2..0000000 --- a/copart/endpoint_test.go +++ /dev/null @@ -1,84 +0,0 @@ -package copart - -import ( - "bytes" - "fmt" - "io/ioutil" - "local/router" - "net/http" - "net/http/httptest" - "os/exec" - "path" - "runtime" - "strings" - "testing" - "time" -) - -func StartServer() *http.Server { - _, filename, _, _ := runtime.Caller(0) - dir := path.Dir(filename) - html := path.Join(dir, "testdata", "sample_auction_live.html") - b, _ := ioutil.ReadFile(html) - - handler := func(w http.ResponseWriter, r *http.Request) { - w.Write(b) - } - - s := router.New() - s.Add(router.Wildcard, handler) - s.Add("/", handler) - - port := getPort() - - cmd := exec.Command("bash", "-c", `ifconfig en0 | grep -o '[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*' | head -n 1`) - out := bytes.NewBuffer(nil) - cmd.Stdout = out - if err := cmd.Run(); err != nil { - panic(err) - } - if len(out.Bytes()) < 1 { - cmd := exec.Command("bash", "-c", `ifconfig eno1 | grep -o '[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*' | head -n 1`) - cmd.Stdout = out - if err := cmd.Run(); err != nil { - panic(err) - } - } - url := fmt.Sprintf("http://%s:%s", strings.TrimSpace(string(out.Bytes())), port) - - srv := &http.Server{ - Addr: ":" + port, - Handler: s, - } - go func() { - if err := srv.ListenAndServe(); err != nil && err != http.ErrServerClosed { - panic(err) - } - }() - for { - if _, err := http.Get(url); err == nil { - break - } - time.Sleep(time.Millisecond * 250) - } - srv.Addr = url - return srv -} - -func getPort() string { - s := httptest.NewServer(nil) - s.Close() - time.Sleep(time.Millisecond * 2500) - seg := strings.Split(s.URL, ":") - return seg[len(seg)-1] -} - -func TestStartServer(t *testing.T) { - s := StartServer() - defer s.Close() - resp, _ := http.Get(s.Addr) - b, _ := ioutil.ReadAll(resp.Body) - if len(b) < 1 { - t.Fatalf("failed to start fake auction server") - } -} diff --git a/copart/out2.db b/copart/out2.db deleted file mode 100644 index e449c28..0000000 Binary files a/copart/out2.db and /dev/null differ diff --git a/copart/selenium_test.go b/copart/selenium_test.go deleted file mode 100644 index 71d1733..0000000 --- a/copart/selenium_test.go +++ /dev/null @@ -1,90 +0,0 @@ -package copart - -import ( - "encoding/json" - "local/sandbox/selenium/copart/copart/auction" - "local/sandbox/selenium/copart/copart/browser" - "local/sandbox/selenium/copart/copart/config" - "log" - "os" - "testing" - "time" -) - -func TestSelenium(t *testing.T) { - s := StartServer() - defer s.Close() - log.Printf("started faux auctions on %s", s.Addr) - - b, err := browser.New() - if err != nil { - t.Fatal(err) - } - log.Println("made browser", s.Addr) - - if err := b.Get(s.Addr); err != nil { - t.Fatal(err) - } - log.Printf("navigated to %s", s.Addr) - - c := auction.NewCar() - if err := c.Parse(b.Driver); err != nil { - t.Fatal(err) - } - log.Printf("parsed car %s", c.String()) - log.Println(c.Details) -} - -func TestReal(t *testing.T) { - os.Args = []string{ - "a", - "-addr", - "./out2.db", - "-db", - "map", - } - - if err := config.New(); err != nil { - t.Fatal(err) - } - - log.Println("Creating today...") - today, err := auction.NewToday() - if err != nil { - t.Fatal(err) - } - log.Println("Starting today...") - if err := today.Start(); err != nil { - t.Fatal(err) - } - - for { - log.Println("Blocking empty list...") - time.Sleep(time.Second) - var list []string - if b, err := config.Values().DB.Get("LIST"); err != nil { - t.Fatal(err) - } else if err := json.Unmarshal(b, &list); err != nil { - t.Fatal(err) - } else if len(list) < 2 { - continue - } else { - log.Println("Dumping from list...") - for _, id := range list { - c := auction.NewCar() - if b, err := config.Values().DB.Get(id); err != nil { - t.Fatal(err) - } else if err := c.Decode(b); err != nil { - t.Fatal(err) - } else { - log.Println(c.String()) - } - } - break - } - } - - if err := today.Stop(); err != nil { - t.Fatal(err) - } -} diff --git a/copart/testdata/bolt.db b/copart/testdata/bolt.db deleted file mode 100644 index 155c83f..0000000 Binary files a/copart/testdata/bolt.db and /dev/null differ diff --git a/copart/testdata/fix.go b/copart/testdata/fix.go deleted file mode 100644 index cc6250d..0000000 --- a/copart/testdata/fix.go +++ /dev/null @@ -1,106 +0,0 @@ -package main - -import ( - "bufio" - "encoding/json" - "fmt" - "local/sandbox/selenium/copart/copart/auction" - "local/storage" - "log" - "net/url" - "os" - "regexp" - "strings" - "time" -) - -func main() { - storage.DefaultNamespace = "namespace" - s, err := storage.New(storage.BOLT, "./bolt.db") - if err != nil { - panic(err) - } - log.Println(s) - - f, err := os.Open("./log2") - if err != nil { - panic(err) - } - defer f.Close() - - list := []string{} - - scn := bufio.NewScanner(f) - for scn.Scan() { - line := scn.Text() - if strings.Contains(line, "true = ") { - continue - } - m := regexp.MustCompile("\\[[^\\]]+\\]").FindAllString(line, 2)[1] - between := func(l, a, b string) string { - form := fmt.Sprintf("%s:[^(%s)]*%s", a, b, b) - c := regexp.MustCompile(form).FindString(l) - c = strings.TrimPrefix(c, fmt.Sprintf("%s:", a)) - c = strings.TrimSuffix(c, fmt.Sprintf("%s", b)) - return strings.TrimSpace(c) - } - bid := between(m, "bid", "title") - title := between(m, "title", "watched") - when := between(m, "when", "\\]") - when = regexp.MustCompile(":[0-9][0-9]\\.[0-9].*$").ReplaceAllString(when, "") - c := auction.NewCar() - c.Bid = bid - c.Title = title - c.TS, _ = time.Parse("2006-01-02 15:04", regexp.MustCompile(":[0-9][0-9]\\.[0-9].*$").ReplaceAllString(when, "")) - c.Details = map[string]string{ - "Year": strings.Split(title, " ")[0], - } - c.Images = []*auction.Image{} - srcs := []string{} - if strings.Contains(c.Title, "CHEVROLET") { - srcs = []string{ - "https://cs.copart.com/v1/AUTH_svc.pdoc00001/PIX133/eb332bcb-4d51-422c-a317-8bfb3729f368.JPG", - "https://cs.copart.com/v1/AUTH_svc.pdoc00001/PIX133/fb3ac542-bb52-4554-98a9-3979fed5edb1.JPG", - "https://cs.copart.com/v1/AUTH_svc.pdoc00001/PIX133/5c974805-c917-495a-8481-5e697a46ac25.JPG", - } - } else if strings.Contains(c.Title, "YUKON") { - srcs = []string{ - "https://cs.copart.com/v1/AUTH_svc.pdoc00001/PIX145/c64e1510-9e81-4128-a285-e4cc45036670.JPG", - "https://cs.copart.com/v1/AUTH_svc.pdoc00001/PIX145/1ef2b374-5245-458c-a540-11ed1ea81f9b.JPG", - } - } else if strings.Contains(c.Title, "JEEP") { - srcs = []string{ - "https://cs.copart.com/v1/AUTH_svc.pdoc00001/PIX137/8c9d27d3-3642-499c-86de-0bee685e116e.JPG", - "https://cs.copart.com/v1/AUTH_svc.pdoc00001/PIX137/d7b160cc-c171-473d-851f-c92bf3a58ee6.JPG", - } - } else if strings.Contains(c.Title, "HONDA") { - srcs = []string{ - "https://cs.copart.com/v1/AUTH_svc.pdoc00001/PIX133/c9504579-3f31-4278-b020-2b1b37867c82.JPG", - } - } else if strings.Contains(c.Title, "MAZDA 3") { - srcs = []string{ - "https://cs.copart.com/v1/AUTH_svc.pdoc00001/PIX133/fbc946db-bb03-4624-b8d4-b7723722c0d5.JPG", - "https://cs.copart.com/v1/AUTH_svc.pdoc00001/PIX133/3892e997-ca0c-4270-86cb-94b98cdfd28e.JPG", - "https://cs.copart.com/v1/AUTH_svc.pdoc00001/PIX133/3bee196b-219f-4b6b-b8cf-9d2797ab5113.JPG", - } - } - for _, src := range srcs { - u, _ := url.Parse(src) - c.Images = append(c.Images, &auction.Image{Src: u}) - } - log.Println(c) - if b, err := c.Encode(); err != nil { - panic(err) - } else if err := s.Set(c.String(), b); err != nil { - panic(err) - } - list = append(list, c.String()) - } - if err := scn.Err(); err != nil { - panic(err) - } - b, _ := json.Marshal(list) - if err := s.Set("LIST", b); err != nil { - panic(err) - } -} diff --git a/copart/testdata/log b/copart/testdata/log deleted file mode 100644 index 8212905..0000000 --- a/copart/testdata/log +++ /dev/null @@ -1,553 +0,0 @@ -2019/06/14 13:44:33 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:32.100278808 -0600 MDT m=+549.472307556] == [bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:33.649979402 -0600 MDT m=+551.022008143]) -2019/06/14 13:44:34 Blocking empty list... -2019/06/14 13:44:34 true = ([bid:$4,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:33.263653682 -0600 MDT m=+550.635682442] == [bid:$4,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:34.853057112 -0600 MDT m=+552.225085858]) -2019/06/14 13:44:35 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:33.649979402 -0600 MDT m=+551.022008143] == [bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:35.209579405 -0600 MDT m=+552.581608152]) -2019/06/14 13:44:35 Blocking empty list... -2019/06/14 13:44:36 Blocking empty list... -2019/06/14 13:44:36 true = ([bid:$4,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:34.853057112 -0600 MDT m=+552.225085858] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:36.442979544 -0600 MDT m=+553.815008292]) -2019/06/14 13:44:36 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:35.209579405 -0600 MDT m=+552.581608152] == [bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:36.765530586 -0600 MDT m=+554.137559334]) -2019/06/14 13:44:37 Blocking empty list... -2019/06/14 13:44:37 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:36.442979544 -0600 MDT m=+553.815008292] == [bid:$4,700 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:37.998799546 -0600 MDT m=+555.370828308]) -2019/06/14 13:44:38 Blocking empty list... -2019/06/14 13:44:38 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:36.765530586 -0600 MDT m=+554.137559334] == [bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:38.309365279 -0600 MDT m=+555.681394016]) -2019/06/14 13:44:39 Blocking empty list... -2019/06/14 13:44:39 true = ([bid:$4,700 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:37.998799546 -0600 MDT m=+555.370828308] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:39.632325485 -0600 MDT m=+557.004354235]) -2019/06/14 13:44:39 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:38.309365279 -0600 MDT m=+555.681394016] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:39.876272196 -0600 MDT m=+557.248300968]) -2019/06/14 13:44:40 Blocking empty list... -2019/06/14 13:44:41 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:39.632325485 -0600 MDT m=+557.004354235] == [bid:$4,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:41.210836371 -0600 MDT m=+558.582865114]) -2019/06/14 13:44:41 Blocking empty list... -2019/06/14 13:44:41 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:39.876272196 -0600 MDT m=+557.248300968] == [bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:41.434892417 -0600 MDT m=+558.806921162]) -2019/06/14 13:44:42 Blocking empty list... -2019/06/14 13:44:42 true = ([bid:$4,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:41.210836371 -0600 MDT m=+558.582865114] == [bid:$4,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:42.800903683 -0600 MDT m=+560.172932419]) -2019/06/14 13:44:42 true = ([bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:41.434892417 -0600 MDT m=+558.806921162] == [bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:42.975489596 -0600 MDT m=+560.347518332]) -2019/06/14 13:44:43 Blocking empty list... -2019/06/14 13:44:44 Blocking empty list... -2019/06/14 13:44:44 true = ([bid:$4,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:42.800903683 -0600 MDT m=+560.172932419] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:44.383681507 -0600 MDT m=+561.755710284]) -2019/06/14 13:44:44 true = ([bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:42.975489596 -0600 MDT m=+560.347518332] == [bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:44.533291771 -0600 MDT m=+561.905320516]) -2019/06/14 13:44:45 Blocking empty list... -2019/06/14 13:44:46 Blocking empty list... -2019/06/14 13:44:46 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:44.383681507 -0600 MDT m=+561.755710284] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:46.651673699 -0600 MDT m=+564.023702462]) -2019/06/14 13:44:46 true = ([bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:44.533291771 -0600 MDT m=+561.905320516] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:46.71137253 -0600 MDT m=+564.083401292]) -2019/06/14 13:44:47 Blocking empty list... -2019/06/14 13:44:48 Blocking empty list... -2019/06/14 13:44:49 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:46.651673699 -0600 MDT m=+564.023702462] == [bid:$5,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:49.04381699 -0600 MDT m=+566.415845754]) -2019/06/14 13:44:49 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:46.71137253 -0600 MDT m=+564.083401292] == [bid:$800 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:49.075309089 -0600 MDT m=+566.447337833]) -2019/06/14 13:44:49 Blocking empty list... -2019/06/14 13:44:50 Blocking empty list... -2019/06/14 13:44:50 true = ([bid:$5,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:49.04381699 -0600 MDT m=+566.415845754] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:50.626495561 -0600 MDT m=+567.998524315]) -2019/06/14 13:44:50 true = ([bid:$800 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:49.075309089 -0600 MDT m=+566.447337833] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:50.637091128 -0600 MDT m=+568.009119874]) -2019/06/14 13:44:51 Blocking empty list... -2019/06/14 13:44:52 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:50.637091128 -0600 MDT m=+568.009119874] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:52.201787818 -0600 MDT m=+569.573816555]) -2019/06/14 13:44:52 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:50.626495561 -0600 MDT m=+567.998524315] == [bid:$5,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:52.210615356 -0600 MDT m=+569.582644106]) -2019/06/14 13:44:52 Blocking empty list... -2019/06/14 13:44:53 Blocking empty list... -2019/06/14 13:44:53 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:52.201787818 -0600 MDT m=+569.573816555] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:53.785375027 -0600 MDT m=+571.157403770]) -2019/06/14 13:44:53 true = ([bid:$5,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:52.210615356 -0600 MDT m=+569.582644106] == [bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:53.794478475 -0600 MDT m=+571.166507235]) -2019/06/14 13:44:54 Blocking empty list... -2019/06/14 13:44:55 Blocking empty list... -2019/06/14 13:44:55 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:53.785375027 -0600 MDT m=+571.157403770] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:55.341663372 -0600 MDT m=+572.713692125]) -2019/06/14 13:44:55 true = ([bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:53.794478475 -0600 MDT m=+571.166507235] == [bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:55.347619414 -0600 MDT m=+572.719648150]) -2019/06/14 13:44:56 Blocking empty list... -2019/06/14 13:44:56 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:55.341663372 -0600 MDT m=+572.713692125] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:56.887273765 -0600 MDT m=+574.259302513]) -2019/06/14 13:44:56 true = ([bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:55.347619414 -0600 MDT m=+572.719648150] == [bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:56.894005011 -0600 MDT m=+574.266033759]) -2019/06/14 13:44:57 Blocking empty list... -2019/06/14 13:44:58 Blocking empty list... -2019/06/14 13:44:58 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:56.887273765 -0600 MDT m=+574.259302513] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:58.467862845 -0600 MDT m=+575.839891596]) -2019/06/14 13:44:58 true = ([bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:56.894005011 -0600 MDT m=+574.266033759] == [bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:58.467875669 -0600 MDT m=+575.839904419]) -2019/06/14 13:44:59 Blocking empty list... -2019/06/14 13:45:00 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:58.467862845 -0600 MDT m=+575.839891596] == [bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:00.029947727 -0600 MDT m=+577.401976473]) -2019/06/14 13:45:00 true = ([bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:58.467875669 -0600 MDT m=+575.839904419] == [bid:$6,000 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:00.033625382 -0600 MDT m=+577.405654118]) -2019/06/14 13:45:00 Blocking empty list... -2019/06/14 13:45:01 Blocking empty list... -2019/06/14 13:45:01 true = ([bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:00.029947727 -0600 MDT m=+577.401976473] == [bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:01.617679613 -0600 MDT m=+578.989708348]) -2019/06/14 13:45:01 true = ([bid:$6,000 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:00.033625382 -0600 MDT m=+577.405654118] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:01.626412103 -0600 MDT m=+578.998440838]) -2019/06/14 13:45:02 Blocking empty list... -2019/06/14 13:45:03 true = ([bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:01.617679613 -0600 MDT m=+578.989708348] == [bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:03.182911975 -0600 MDT m=+580.554940742]) -2019/06/14 13:45:03 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:01.626412103 -0600 MDT m=+578.998440838] == [bid:$6,100 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:03.199787677 -0600 MDT m=+580.571816439]) -2019/06/14 13:45:03 Blocking empty list... -2019/06/14 13:45:04 Blocking empty list... -2019/06/14 13:45:04 true = ([bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:03.182911975 -0600 MDT m=+580.554940742] == [bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:04.746031495 -0600 MDT m=+582.118060242]) -2019/06/14 13:45:04 true = ([bid:$6,100 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:03.199787677 -0600 MDT m=+580.571816439] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:04.767179705 -0600 MDT m=+582.139208448]) -2019/06/14 13:45:05 Blocking empty list... -2019/06/14 13:45:06 Blocking empty list... -2019/06/14 13:45:06 true = ([bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:04.746031495 -0600 MDT m=+582.118060242] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:06.310545892 -0600 MDT m=+583.682574636]) -2019/06/14 13:45:06 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:04.767179705 -0600 MDT m=+582.139208448] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:06.335166826 -0600 MDT m=+583.707195567]) -2019/06/14 13:45:07 Blocking empty list... -2019/06/14 13:45:07 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:06.310545892 -0600 MDT m=+583.682574636] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:07.883620143 -0600 MDT m=+585.255648901]) -2019/06/14 13:45:07 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:06.335166826 -0600 MDT m=+583.707195567] == [bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:07.907584605 -0600 MDT m=+585.279613340]) -2019/06/14 13:45:08 Blocking empty list... -2019/06/14 13:45:09 Blocking empty list... -2019/06/14 13:45:09 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:07.883620143 -0600 MDT m=+585.255648901] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:09.45518732 -0600 MDT m=+586.827216080]) -2019/06/14 13:45:09 true = ([bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:07.907584605 -0600 MDT m=+585.279613340] == [bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:09.4663536 -0600 MDT m=+586.838382341]) -2019/06/14 13:45:10 Blocking empty list... -2019/06/14 13:45:11 Blocking empty list... -2019/06/14 13:45:11 true = ([bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:09.4663536 -0600 MDT m=+586.838382341] == [bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:11.714388541 -0600 MDT m=+589.086417329]) -2019/06/14 13:45:11 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:09.45518732 -0600 MDT m=+586.827216080] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:11.744893291 -0600 MDT m=+589.116922050]) -2019/06/14 13:45:12 Blocking empty list... -2019/06/14 13:45:13 Blocking empty list... -2019/06/14 13:45:13 true = ([bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:11.714388541 -0600 MDT m=+589.086417329] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:13.45008916 -0600 MDT m=+590.822117920]) -2019/06/14 13:45:13 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:11.744893291 -0600 MDT m=+589.116922050] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:13.467717253 -0600 MDT m=+590.839745995]) -2019/06/14 13:45:14 Blocking empty list... -2019/06/14 13:45:15 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:13.45008916 -0600 MDT m=+590.822117920] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:15.028250727 -0600 MDT m=+592.400279501]) -2019/06/14 13:45:15 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:13.467717253 -0600 MDT m=+590.839745995] == [bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:15.029365652 -0600 MDT m=+592.401394387]) -2019/06/14 13:45:15 Blocking empty list... -2019/06/14 13:45:16 Blocking empty list... -2019/06/14 13:45:16 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:15.028250727 -0600 MDT m=+592.400279501] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:16.574778848 -0600 MDT m=+593.946807598]) -2019/06/14 13:45:16 true = ([bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:15.029365652 -0600 MDT m=+592.401394387] == [bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:16.581757004 -0600 MDT m=+593.953785791]) -2019/06/14 13:45:17 Blocking empty list... -2019/06/14 13:45:18 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:16.574778848 -0600 MDT m=+593.946807598] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:18.148148234 -0600 MDT m=+595.520177008]) -2019/06/14 13:45:18 true = ([bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:16.581757004 -0600 MDT m=+593.953785791] == [bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:18.157707579 -0600 MDT m=+595.529736321]) -2019/06/14 13:45:18 Blocking empty list... -2019/06/14 13:45:19 Blocking empty list... -2019/06/14 13:45:19 true = ([bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:18.157707579 -0600 MDT m=+595.529736321] == [bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:19.727213553 -0600 MDT m=+597.099242300]) -2019/06/14 13:45:19 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:18.148148234 -0600 MDT m=+595.520177008] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:19.732192656 -0600 MDT m=+597.104221399]) -2019/06/14 13:45:20 Blocking empty list... -2019/06/14 13:45:21 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:19.732192656 -0600 MDT m=+597.104221399] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:21.300980036 -0600 MDT m=+598.673008782]) -2019/06/14 13:45:21 Blocking empty list... -2019/06/14 13:45:21 true = ([bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:19.727213553 -0600 MDT m=+597.099242300] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:21.307722352 -0600 MDT m=+598.679751090]) -2019/06/14 13:45:22 Blocking empty list... -2019/06/14 13:45:23 Blocking empty list... -2019/06/14 13:45:23 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:21.300980036 -0600 MDT m=+598.673008782] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:23.379902263 -0600 MDT m=+600.751931031]) -2019/06/14 13:45:23 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:21.307722352 -0600 MDT m=+598.679751090] == [bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:23.392826934 -0600 MDT m=+600.764855701]) -2019/06/14 13:45:24 Blocking empty list... -2019/06/14 13:45:25 Blocking empty list... -2019/06/14 13:45:25 true = ([bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:23.392826934 -0600 MDT m=+600.764855701] == [bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:25.71438718 -0600 MDT m=+603.086415961]) -2019/06/14 13:45:25 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:23.379902263 -0600 MDT m=+600.751931031] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:25.759869463 -0600 MDT m=+603.131898219]) -2019/06/14 13:45:26 Blocking empty list... -2019/06/14 13:45:27 Blocking empty list... -2019/06/14 13:45:27 true = ([bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:25.71438718 -0600 MDT m=+603.086415961] == [bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:27.748442664 -0600 MDT m=+605.120471419]) -2019/06/14 13:45:27 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:25.759869463 -0600 MDT m=+603.131898219] == [bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:27.762685583 -0600 MDT m=+605.134714377]) -2019/06/14 13:45:28 Blocking empty list... -2019/06/14 13:45:29 Blocking empty list... -2019/06/14 13:45:29 true = ([bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:27.762685583 -0600 MDT m=+605.134714377] == [bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:29.693781661 -0600 MDT m=+607.065810420]) -2019/06/14 13:45:29 true = ([bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:27.748442664 -0600 MDT m=+605.120471419] == [bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:29.7037451 -0600 MDT m=+607.075773851]) -2019/06/14 13:45:30 Blocking empty list... -2019/06/14 13:45:31 Blocking empty list... -2019/06/14 13:45:31 true = ([bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:29.7037451 -0600 MDT m=+607.075773851] == [bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:31.581812917 -0600 MDT m=+608.953841681]) -2019/06/14 13:45:31 true = ([bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:29.693781661 -0600 MDT m=+607.065810420] == [bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:31.603363109 -0600 MDT m=+608.975391926]) -2019/06/14 13:45:32 Blocking empty list... -2019/06/14 13:45:33 true = ([bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:31.581812917 -0600 MDT m=+608.953841681] == [bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:33.129003954 -0600 MDT m=+610.501032706]) -2019/06/14 13:45:33 true = ([bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:31.603363109 -0600 MDT m=+608.975391926] == [bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:33.154188308 -0600 MDT m=+610.526217074]) -2019/06/14 13:45:33 Blocking empty list... -2019/06/14 13:45:34 Blocking empty list... -2019/06/14 13:45:34 true = ([bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:33.129003954 -0600 MDT m=+610.501032706] == [bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:34.698293537 -0600 MDT m=+612.070322308]) -2019/06/14 13:45:34 true = ([bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:33.154188308 -0600 MDT m=+610.526217074] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:34.740571037 -0600 MDT m=+612.112599799]) -2019/06/14 13:45:35 Blocking empty list... -2019/06/14 13:45:36 Blocking empty list... -2019/06/14 13:45:36 true = ([bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:34.698293537 -0600 MDT m=+612.070322308] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:36.670375341 -0600 MDT m=+614.042404108]) -2019/06/14 13:45:36 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:34.740571037 -0600 MDT m=+612.112599799] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:36.714017157 -0600 MDT m=+614.086045966]) -2019/06/14 13:45:37 Blocking empty list... -2019/06/14 13:45:38 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:36.670375341 -0600 MDT m=+614.042404108] == [bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:38.247777676 -0600 MDT m=+615.619806410]) -2019/06/14 13:45:38 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:36.714017157 -0600 MDT m=+614.086045966] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:38.270868543 -0600 MDT m=+615.642897295]) -2019/06/14 13:45:38 Blocking empty list... -2019/06/14 13:45:39 Blocking empty list... -2019/06/14 13:45:39 true = ([bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:38.247777676 -0600 MDT m=+615.619806410] == [bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:39.820522402 -0600 MDT m=+617.192551139]) -2019/06/14 13:45:39 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:38.270868543 -0600 MDT m=+615.642897295] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:39.840696355 -0600 MDT m=+617.212725106]) -2019/06/14 13:45:40 Blocking empty list... -2019/06/14 13:45:41 Blocking empty list... -2019/06/14 13:45:41 true = ([bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:39.820522402 -0600 MDT m=+617.192551139] == [bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:41.865548025 -0600 MDT m=+619.237576784]) -2019/06/14 13:45:41 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:39.840696355 -0600 MDT m=+617.212725106] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:41.87975323 -0600 MDT m=+619.251782000]) -2019/06/14 13:45:42 Blocking empty list... -2019/06/14 13:45:43 Blocking empty list... -2019/06/14 13:45:44 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:41.87975323 -0600 MDT m=+619.251782000] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:44.12899537 -0600 MDT m=+621.501024149]) -2019/06/14 13:45:44 true = ([bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:41.865548025 -0600 MDT m=+619.237576784] == [bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:44.160166521 -0600 MDT m=+621.532195282]) -2019/06/14 13:45:44 Blocking empty list... -2019/06/14 13:45:45 Blocking empty list... -2019/06/14 13:45:45 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:44.12899537 -0600 MDT m=+621.501024149] == [bid:Next Item on title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:45.698231339 -0600 MDT m=+623.070260115]) -2019/06/14 13:45:45 true = ([bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:44.160166521 -0600 MDT m=+621.532195282] == [bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:45.730591096 -0600 MDT m=+623.102619832]) -2019/06/14 13:45:46 Blocking empty list... -2019/06/14 13:45:47 true = ([bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:45.730591096 -0600 MDT m=+623.102619832] == [bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:47.300433357 -0600 MDT m=+624.672462125]) -2019/06/14 13:45:47 Blocking empty list... -2019/06/14 13:45:47 DETAIL 8 6 -2019/06/14 13:45:47 false = ([bid:Next Item on title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:45.698231339 -0600 MDT m=+623.070260115] == [bid:$950 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:47.326540361 -0600 MDT m=+624.698569101]) -2019/06/14 13:45:47 DETAIL 8 6 -2019/06/14 13:45:47 TOP -2019/06/14 13:45:47 C [bid:$950 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:47.970680447 -0600 MDT m=+625.342709201] -2019/06/14 13:45:48 Blocking empty list... -2019/06/14 13:45:48 true = ([bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:47.300433357 -0600 MDT m=+624.672462125] == [bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:48.875565095 -0600 MDT m=+626.247593841]) -2019/06/14 13:45:49 Blocking empty list... -2019/06/14 13:45:49 true = ([bid:$950 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:47.970680447 -0600 MDT m=+625.342709201] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:49.530146108 -0600 MDT m=+626.902174848]) -2019/06/14 13:45:50 Blocking empty list... -2019/06/14 13:45:50 true = ([bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:48.875565095 -0600 MDT m=+626.247593841] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:50.441141654 -0600 MDT m=+627.813170424]) -2019/06/14 13:45:51 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:49.530146108 -0600 MDT m=+626.902174848] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:51.092703578 -0600 MDT m=+628.464732312]) -2019/06/14 13:45:51 Blocking empty list... -2019/06/14 13:45:52 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:50.441141654 -0600 MDT m=+627.813170424] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:52.014105523 -0600 MDT m=+629.386134268]) -2019/06/14 13:45:52 Blocking empty list... -2019/06/14 13:45:52 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:51.092703578 -0600 MDT m=+628.464732312] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:52.666563883 -0600 MDT m=+630.038592628]) -2019/06/14 13:45:53 Blocking empty list... -2019/06/14 13:45:53 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:52.014105523 -0600 MDT m=+629.386134268] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:53.557551959 -0600 MDT m=+630.929580695]) -2019/06/14 13:45:54 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:52.666563883 -0600 MDT m=+630.038592628] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:54.239611178 -0600 MDT m=+631.611639922]) -2019/06/14 13:45:54 Blocking empty list... -2019/06/14 13:45:55 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:53.557551959 -0600 MDT m=+630.929580695] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:55.114075035 -0600 MDT m=+632.486103788]) -2019/06/14 13:45:55 Blocking empty list... -2019/06/14 13:45:55 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:54.239611178 -0600 MDT m=+631.611639922] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:55.804221548 -0600 MDT m=+633.176250310]) -2019/06/14 13:45:56 Blocking empty list... -2019/06/14 13:45:56 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:55.114075035 -0600 MDT m=+632.486103788] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:56.706568281 -0600 MDT m=+634.078597042]) -2019/06/14 13:45:57 Blocking empty list... -2019/06/14 13:45:57 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:55.804221548 -0600 MDT m=+633.176250310] == [bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:57.361048223 -0600 MDT m=+634.733076974]) -2019/06/14 13:45:58 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:56.706568281 -0600 MDT m=+634.078597042] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:58.261410026 -0600 MDT m=+635.633438778]) -2019/06/14 13:45:58 Blocking empty list... -2019/06/14 13:45:58 true = ([bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:57.361048223 -0600 MDT m=+634.733076974] == [bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:58.912388766 -0600 MDT m=+636.284417514]) -2019/06/14 13:45:59 Blocking empty list... -2019/06/14 13:45:59 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:58.261410026 -0600 MDT m=+635.633438778] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:59.82282752 -0600 MDT m=+637.194856272]) -2019/06/14 13:46:00 Blocking empty list... -2019/06/14 13:46:00 true = ([bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:58.912388766 -0600 MDT m=+636.284417514] == [bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:00.465703716 -0600 MDT m=+637.837732454]) -2019/06/14 13:46:01 Blocking empty list... -2019/06/14 13:46:01 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:59.82282752 -0600 MDT m=+637.194856272] == [bid:Bonus title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:01.397741474 -0600 MDT m=+638.769770221]) -2019/06/14 13:46:02 true = ([bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:00.465703716 -0600 MDT m=+637.837732454] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:02.023624181 -0600 MDT m=+639.395652927]) -2019/06/14 13:46:02 Blocking empty list... -2019/06/14 13:46:03 true = ([bid:Bonus title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:01.397741474 -0600 MDT m=+638.769770221] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:03.006045999 -0600 MDT m=+640.378074735]) -2019/06/14 13:46:03 Blocking empty list... -2019/06/14 13:46:03 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:02.023624181 -0600 MDT m=+639.395652927] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:03.58135933 -0600 MDT m=+640.953388064]) -2019/06/14 13:46:04 Blocking empty list... -2019/06/14 13:46:04 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:03.006045999 -0600 MDT m=+640.378074735] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:04.578964932 -0600 MDT m=+641.950993680]) -2019/06/14 13:46:05 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:03.58135933 -0600 MDT m=+640.953388064] == [bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:05.140126563 -0600 MDT m=+642.512155309]) -2019/06/14 13:46:05 Blocking empty list... -2019/06/14 13:46:06 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:04.578964932 -0600 MDT m=+641.950993680] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:06.178025052 -0600 MDT m=+643.550053786]) -2019/06/14 13:46:06 Blocking empty list... -2019/06/14 13:46:06 true = ([bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:05.140126563 -0600 MDT m=+642.512155309] == [bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:06.697389814 -0600 MDT m=+644.069418561]) -2019/06/14 13:46:07 Blocking empty list... -2019/06/14 13:46:07 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:06.178025052 -0600 MDT m=+643.550053786] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:07.780702876 -0600 MDT m=+645.152731610]) -2019/06/14 13:46:08 true = ([bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:06.697389814 -0600 MDT m=+644.069418561] == [bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:08.248101491 -0600 MDT m=+645.620130237]) -2019/06/14 13:46:08 Blocking empty list... -2019/06/14 13:46:09 Blocking empty list... -2019/06/14 13:46:09 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:07.780702876 -0600 MDT m=+645.152731610] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:09.386820437 -0600 MDT m=+646.758849193]) -2019/06/14 13:46:09 true = ([bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:08.248101491 -0600 MDT m=+645.620130237] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:09.818455714 -0600 MDT m=+647.190484458]) -2019/06/14 13:46:10 Blocking empty list... -2019/06/14 13:46:10 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:09.386820437 -0600 MDT m=+646.758849193] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:10.971483398 -0600 MDT m=+648.343512143]) -2019/06/14 13:46:11 Blocking empty list... -2019/06/14 13:46:11 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:09.818455714 -0600 MDT m=+647.190484458] == [bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:11.378239494 -0600 MDT m=+648.750268245]) -2019/06/14 13:46:12 Blocking empty list... -2019/06/14 13:46:12 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:10.971483398 -0600 MDT m=+648.343512143] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:12.537834103 -0600 MDT m=+649.909862840]) -2019/06/14 13:46:12 true = ([bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:11.378239494 -0600 MDT m=+648.750268245] == [bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:12.921818006 -0600 MDT m=+650.293846777]) -2019/06/14 13:46:13 Blocking empty list... -2019/06/14 13:46:14 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:12.537834103 -0600 MDT m=+649.909862840] == [bid:Next Item on title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:14.115315236 -0600 MDT m=+651.487343970]) -2019/06/14 13:46:14 Blocking empty list... -2019/06/14 13:46:14 true = ([bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:12.921818006 -0600 MDT m=+650.293846777] == [bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:14.471067849 -0600 MDT m=+651.843096596]) -2019/06/14 13:46:15 Blocking empty list... -2019/06/14 13:46:15 DETAIL FRONT END REAR END -2019/06/14 13:46:15 false = ([bid:Next Item on title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:14.115315236 -0600 MDT m=+651.487343970] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:15.765589239 -0600 MDT m=+653.137617986]) -2019/06/14 13:46:15 DETAIL SIDE N/A -2019/06/14 13:46:15 TOP -2019/06/14 13:46:16 true = ([bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:14.471067849 -0600 MDT m=+651.843096596] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:16.02007468 -0600 MDT m=+653.392103448]) -2019/06/14 13:46:16 Blocking empty list... -2019/06/14 13:46:16 C [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:16.390025771 -0600 MDT m=+653.762054512] -2019/06/14 13:46:17 Blocking empty list... -2019/06/14 13:46:17 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:16.02007468 -0600 MDT m=+653.392103448] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:17.651753355 -0600 MDT m=+655.023782106]) -2019/06/14 13:46:17 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:16.390025771 -0600 MDT m=+653.762054512] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:17.945675122 -0600 MDT m=+655.317703865]) -2019/06/14 13:46:18 Blocking empty list... -2019/06/14 13:46:19 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:17.651753355 -0600 MDT m=+655.023782106] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:19.255879024 -0600 MDT m=+656.627907787]) -2019/06/14 13:46:19 Blocking empty list... -2019/06/14 13:46:19 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:17.945675122 -0600 MDT m=+655.317703865] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:19.503173988 -0600 MDT m=+656.875202744]) -2019/06/14 13:46:20 Blocking empty list... -2019/06/14 13:46:20 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:19.255879024 -0600 MDT m=+656.627907787] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:20.879860426 -0600 MDT m=+658.251889173]) -2019/06/14 13:46:21 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:19.503173988 -0600 MDT m=+656.875202744] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:21.074419533 -0600 MDT m=+658.446448280]) -2019/06/14 13:46:21 Blocking empty list... -2019/06/14 13:46:22 Blocking empty list... -2019/06/14 13:46:22 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:20.879860426 -0600 MDT m=+658.251889173] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:22.472975892 -0600 MDT m=+659.845004657]) -2019/06/14 13:46:22 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:21.074419533 -0600 MDT m=+658.446448280] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:22.638350764 -0600 MDT m=+660.010379508]) -2019/06/14 13:46:23 Blocking empty list... -2019/06/14 13:46:24 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:22.472975892 -0600 MDT m=+659.845004657] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:24.039286396 -0600 MDT m=+661.411315153]) -2019/06/14 13:46:24 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:22.638350764 -0600 MDT m=+660.010379508] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:24.210076006 -0600 MDT m=+661.582104749]) -2019/06/14 13:46:24 Blocking empty list... -2019/06/14 13:46:25 Blocking empty list... -2019/06/14 13:46:25 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:24.039286396 -0600 MDT m=+661.411315153] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:25.623141495 -0600 MDT m=+662.995170232]) -2019/06/14 13:46:25 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:24.210076006 -0600 MDT m=+661.582104749] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:25.77105872 -0600 MDT m=+663.143087460]) -2019/06/14 13:46:26 Blocking empty list... -2019/06/14 13:46:27 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:25.623141495 -0600 MDT m=+662.995170232] == [bid:Bonus title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:27.217110188 -0600 MDT m=+664.589138960]) -2019/06/14 13:46:27 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:25.77105872 -0600 MDT m=+663.143087460] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:27.316556146 -0600 MDT m=+664.688584889]) -2019/06/14 13:46:27 Blocking empty list... -2019/06/14 13:46:28 Blocking empty list... -2019/06/14 13:46:28 true = ([bid:Bonus title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:27.217110188 -0600 MDT m=+664.589138960] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:28.804421116 -0600 MDT m=+666.176449864]) -2019/06/14 13:46:28 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:27.316556146 -0600 MDT m=+664.688584889] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:28.874885439 -0600 MDT m=+666.246914183]) -2019/06/14 13:46:29 Blocking empty list... -2019/06/14 13:46:30 Blocking empty list... -2019/06/14 13:46:30 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:28.804421116 -0600 MDT m=+666.176449864] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:30.378302778 -0600 MDT m=+667.750331525]) -2019/06/14 13:46:30 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:28.874885439 -0600 MDT m=+666.246914183] == [bid:Bonus title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:30.430949455 -0600 MDT m=+667.802978198]) -2019/06/14 13:46:31 Blocking empty list... -2019/06/14 13:46:31 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:30.378302778 -0600 MDT m=+667.750331525] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:31.953632384 -0600 MDT m=+669.325661131]) -2019/06/14 13:46:31 true = ([bid:Bonus title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:30.430949455 -0600 MDT m=+667.802978198] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:31.996367484 -0600 MDT m=+669.368396221]) -2019/06/14 13:46:32 Blocking empty list... -2019/06/14 13:46:33 Blocking empty list... -2019/06/14 13:46:33 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:31.953632384 -0600 MDT m=+669.325661131] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:33.521086939 -0600 MDT m=+670.893115677]) -2019/06/14 13:46:33 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:31.996367484 -0600 MDT m=+669.368396221] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:33.571119989 -0600 MDT m=+670.943148735]) -2019/06/14 13:46:34 Blocking empty list... -2019/06/14 13:46:35 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:33.521086939 -0600 MDT m=+670.893115677] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:35.111873847 -0600 MDT m=+672.483902604]) -2019/06/14 13:46:35 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:33.571119989 -0600 MDT m=+670.943148735] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:35.140044919 -0600 MDT m=+672.512073682]) -2019/06/14 13:46:35 Blocking empty list... -2019/06/14 13:46:36 Blocking empty list... -2019/06/14 13:46:36 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:35.111873847 -0600 MDT m=+672.483902604] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:36.691188678 -0600 MDT m=+674.063217431]) -2019/06/14 13:46:36 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:35.140044919 -0600 MDT m=+672.512073682] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:36.72922032 -0600 MDT m=+674.101249074]) -2019/06/14 13:46:37 Blocking empty list... -2019/06/14 13:46:38 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:36.691188678 -0600 MDT m=+674.063217431] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:38.271432569 -0600 MDT m=+675.643461305]) -2019/06/14 13:46:38 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:36.72922032 -0600 MDT m=+674.101249074] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:38.298540491 -0600 MDT m=+675.670569229]) -2019/06/14 13:46:38 Blocking empty list... -2019/06/14 13:46:39 Blocking empty list... -2019/06/14 13:46:39 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:38.271432569 -0600 MDT m=+675.643461305] == [bid:Next Item on title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:39.854917796 -0600 MDT m=+677.226946542]) -2019/06/14 13:46:39 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:38.298540491 -0600 MDT m=+675.670569229] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:39.86269596 -0600 MDT m=+677.234724702]) -2019/06/14 13:46:40 Blocking empty list... -2019/06/14 13:46:41 Blocking empty list... -2019/06/14 13:46:41 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:39.86269596 -0600 MDT m=+677.234724702] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:41.421462137 -0600 MDT m=+678.793490880]) -2019/06/14 13:46:41 DETAIL 2.0L 4 4.8L 8 -2019/06/14 13:46:41 false = ([bid:Next Item on title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:39.854917796 -0600 MDT m=+677.226946542] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:41.444806466 -0600 MDT m=+678.816835202]) -2019/06/14 13:46:41 DETAIL $2,316 $5,782 -2019/06/14 13:46:41 TOP -2019/06/14 13:46:42 C [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:42.058019248 -0600 MDT m=+679.430047994] -2019/06/14 13:46:42 Blocking empty list... -2019/06/14 13:46:42 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:41.421462137 -0600 MDT m=+678.793490880] == [bid:Sold on title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:42.978837839 -0600 MDT m=+680.350866588]) -2019/06/14 13:46:43 Blocking empty list... -2019/06/14 13:46:43 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:42.058019248 -0600 MDT m=+679.430047994] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:43.652922025 -0600 MDT m=+681.024950771]) -2019/06/14 13:46:44 stale element reference: stale element reference: element is not attached to the page document - (Session info: chrome=75.0.3770.80) -2019/06/14 13:46:44 Blocking empty list... -2019/06/14 13:46:45 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:43.652922025 -0600 MDT m=+681.024950771] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:45.212745952 -0600 MDT m=+682.584774692]) -2019/06/14 13:46:45 Blocking empty list... -2019/06/14 13:46:46 Blocking empty list... -2019/06/14 13:46:46 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:45.212745952 -0600 MDT m=+682.584774692] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:46.779907351 -0600 MDT m=+684.151936105]) -2019/06/14 13:46:47 Blocking empty list... -2019/06/14 13:46:48 Blocking empty list... -2019/06/14 13:46:48 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:46.779907351 -0600 MDT m=+684.151936105] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:48.37493185 -0600 MDT m=+685.746960593]) -2019/06/14 13:46:49 Blocking empty list... -2019/06/14 13:46:50 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:48.37493185 -0600 MDT m=+685.746960593] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:50.006089325 -0600 MDT m=+687.378118062]) -2019/06/14 13:46:50 Blocking empty list... -2019/06/14 13:46:51 Blocking empty list... -2019/06/14 13:46:51 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:50.006089325 -0600 MDT m=+687.378118062] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:51.571964801 -0600 MDT m=+688.943993546]) -2019/06/14 13:46:52 Blocking empty list... -2019/06/14 13:46:53 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:51.571964801 -0600 MDT m=+688.943993546] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:53.168928243 -0600 MDT m=+690.540956989]) -2019/06/14 13:46:53 Blocking empty list... -2019/06/14 13:46:54 Blocking empty list... -2019/06/14 13:46:54 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:53.168928243 -0600 MDT m=+690.540956989] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:54.746981537 -0600 MDT m=+692.119010284]) -2019/06/14 13:46:55 Blocking empty list... -2019/06/14 13:46:56 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:54.746981537 -0600 MDT m=+692.119010284] == [bid:Sold! title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:56.312143023 -0600 MDT m=+693.684171758]) -2019/06/14 13:46:56 Blocking empty list... -2019/06/14 13:46:57 Blocking empty list... -2019/06/14 13:46:57 DETAIL 107,847 - Actual 157,979 - Exempt -2019/06/14 13:46:57 false = ([bid:Sold! title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:56.312143023 -0600 MDT m=+693.684171758] == [bid:Next Item on title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:57.92401858 -0600 MDT m=+695.296047330]) -2019/06/14 13:46:57 DETAIL 107,847 - Actual 157,979 - Exempt -2019/06/14 13:46:58 TOP -2019/06/14 13:46:58 Blocking empty list... -2019/06/14 13:46:58 C [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:46:58.636284949 -0600 MDT m=+696.008313695] -2019/06/14 13:46:59 Blocking empty list... -2019/06/14 13:47:00 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:46:58.636284949 -0600 MDT m=+696.008313695] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:00.228379187 -0600 MDT m=+697.600407934]) -2019/06/14 13:47:00 Blocking empty list... -2019/06/14 13:47:01 Blocking empty list... -2019/06/14 13:47:01 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:00.228379187 -0600 MDT m=+697.600407934] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:01.828705581 -0600 MDT m=+699.200734322]) -2019/06/14 13:47:02 Blocking empty list... -2019/06/14 13:47:03 Blocking empty list... -2019/06/14 13:47:03 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:01.828705581 -0600 MDT m=+699.200734322] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:03.404720678 -0600 MDT m=+700.776749424]) -2019/06/14 13:47:04 Blocking empty list... -2019/06/14 13:47:04 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:03.404720678 -0600 MDT m=+700.776749424] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:04.995027354 -0600 MDT m=+702.367056092]) -2019/06/14 13:47:05 Blocking empty list... -2019/06/14 13:47:06 Blocking empty list... -2019/06/14 13:47:06 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:04.995027354 -0600 MDT m=+702.367056092] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:06.553799294 -0600 MDT m=+703.925828028]) -2019/06/14 13:47:07 Blocking empty list... -2019/06/14 13:47:08 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:06.553799294 -0600 MDT m=+703.925828028] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:08.135736901 -0600 MDT m=+705.507765668]) -2019/06/14 13:47:08 Blocking empty list... -2019/06/14 13:47:09 Blocking empty list... -2019/06/14 13:47:09 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:08.135736901 -0600 MDT m=+705.507765668] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:09.740053433 -0600 MDT m=+707.112082171]) -2019/06/14 13:47:10 Blocking empty list... -2019/06/14 13:47:11 Blocking empty list... -2019/06/14 13:47:11 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:09.740053433 -0600 MDT m=+707.112082171] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:11.355342645 -0600 MDT m=+708.727371404]) -2019/06/14 13:47:12 Blocking empty list... -2019/06/14 13:47:12 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:11.355342645 -0600 MDT m=+708.727371404] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:12.953509692 -0600 MDT m=+710.325538426]) -2019/06/14 13:47:13 Blocking empty list... -2019/06/14 13:47:14 Blocking empty list... -2019/06/14 13:47:14 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:12.953509692 -0600 MDT m=+710.325538426] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:14.544215968 -0600 MDT m=+711.916244711]) -2019/06/14 13:47:15 Blocking empty list... -2019/06/14 13:47:16 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:14.544215968 -0600 MDT m=+711.916244711] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:16.111428829 -0600 MDT m=+713.483457570]) -2019/06/14 13:47:16 Blocking empty list... -2019/06/14 13:47:17 Blocking empty list... -2019/06/14 13:47:17 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:16.111428829 -0600 MDT m=+713.483457570] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:17.744188889 -0600 MDT m=+715.116217639]) -2019/06/14 13:47:18 Blocking empty list... -2019/06/14 13:47:19 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:17.744188889 -0600 MDT m=+715.116217639] == [bid:Next Item on title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:19.31997218 -0600 MDT m=+716.692000915]) -2019/06/14 13:47:19 Blocking empty list... -2019/06/14 13:47:20 Blocking empty list... -2019/06/14 13:47:20 DETAIL $24,039 $7,664 -2019/06/14 13:47:20 false = ([bid:Next Item on title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:19.31997218 -0600 MDT m=+716.692000915] == [bid:$7,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:20.975960694 -0600 MDT m=+718.347989437]) -2019/06/14 13:47:20 DETAIL BLACK BLUE -2019/06/14 13:47:21 TOP -2019/06/14 13:47:21 Blocking empty list... -2019/06/14 13:47:21 C [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:21.632839693 -0600 MDT m=+719.004868430] -2019/06/14 13:47:22 Blocking empty list... -2019/06/14 13:47:23 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:21.632839693 -0600 MDT m=+719.004868430] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:23.246285645 -0600 MDT m=+720.618314400]) -2019/06/14 13:47:23 Blocking empty list... -2019/06/14 13:47:24 Blocking empty list... -2019/06/14 13:47:24 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:23.246285645 -0600 MDT m=+720.618314400] == [bid:$8,000 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:24.857513644 -0600 MDT m=+722.229542387]) -2019/06/14 13:47:25 Blocking empty list... -2019/06/14 13:47:26 Blocking empty list... -2019/06/14 13:47:26 true = ([bid:$8,000 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:24.857513644 -0600 MDT m=+722.229542387] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:26.442221476 -0600 MDT m=+723.814250212]) -2019/06/14 13:47:27 Blocking empty list... -2019/06/14 13:47:27 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:26.442221476 -0600 MDT m=+723.814250212] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:27.9990393 -0600 MDT m=+725.371068068]) -2019/06/14 13:47:28 Blocking empty list... -2019/06/14 13:47:29 Blocking empty list... -2019/06/14 13:47:29 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:27.9990393 -0600 MDT m=+725.371068068] == [bid:$8,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:29.61021549 -0600 MDT m=+726.982244236]) -2019/06/14 13:47:30 Blocking empty list... -2019/06/14 13:47:31 true = ([bid:$8,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:29.61021549 -0600 MDT m=+726.982244236] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:31.217544509 -0600 MDT m=+728.589573280]) -2019/06/14 13:47:31 Blocking empty list... -2019/06/14 13:47:32 Blocking empty list... -2019/06/14 13:47:32 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:31.217544509 -0600 MDT m=+728.589573280] == [bid:$8,400 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:32.789748968 -0600 MDT m=+730.161777737]) -2019/06/14 13:47:33 Blocking empty list... -2019/06/14 13:47:34 Blocking empty list... -2019/06/14 13:47:34 true = ([bid:$8,400 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:32.789748968 -0600 MDT m=+730.161777737] == [bid:$8,400 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:34.359088515 -0600 MDT m=+731.731117253]) -2019/06/14 13:47:35 Blocking empty list... -2019/06/14 13:47:36 Blocking empty list... -2019/06/14 13:47:36 true = ([bid:$8,400 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:34.359088515 -0600 MDT m=+731.731117253] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:36.560628194 -0600 MDT m=+733.932656950]) -2019/06/14 13:47:37 Blocking empty list... -2019/06/14 13:47:38 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:36.560628194 -0600 MDT m=+733.932656950] == [bid:$8,600 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:38.175551491 -0600 MDT m=+735.547580230]) -2019/06/14 13:47:38 Blocking empty list... -2019/06/14 13:47:39 Blocking empty list... -2019/06/14 13:47:39 true = ([bid:$8,600 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:38.175551491 -0600 MDT m=+735.547580230] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:39.73534806 -0600 MDT m=+737.107376830]) -2019/06/14 13:47:40 Blocking empty list... -2019/06/14 13:47:41 Blocking empty list... -2019/06/14 13:47:41 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:39.73534806 -0600 MDT m=+737.107376830] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:41.333835964 -0600 MDT m=+738.705864712]) -2019/06/14 13:47:42 Blocking empty list... -2019/06/14 13:47:42 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:41.333835964 -0600 MDT m=+738.705864712] == [bid:$8,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:42.926327488 -0600 MDT m=+740.298356250]) -2019/06/14 13:47:43 Blocking empty list... -2019/06/14 13:47:44 Blocking empty list... -2019/06/14 13:47:44 true = ([bid:$8,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:42.926327488 -0600 MDT m=+740.298356250] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:44.493785479 -0600 MDT m=+741.865814216]) -2019/06/14 13:47:45 Blocking empty list... -2019/06/14 13:47:46 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:44.493785479 -0600 MDT m=+741.865814216] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:46.092736556 -0600 MDT m=+743.464765324]) -2019/06/14 13:47:46 Blocking empty list... -2019/06/14 13:47:47 Blocking empty list... -2019/06/14 13:47:47 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:46.092736556 -0600 MDT m=+743.464765324] == [bid:$9,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:47.67597531 -0600 MDT m=+745.048004045]) -2019/06/14 13:47:48 Blocking empty list... -2019/06/14 13:47:49 true = ([bid:$9,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:47.67597531 -0600 MDT m=+745.048004045] == [bid:$9,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:49.283213406 -0600 MDT m=+746.655242158]) -2019/06/14 13:47:49 Blocking empty list... -2019/06/14 13:47:50 Blocking empty list... -2019/06/14 13:47:50 true = ([bid:$9,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:49.283213406 -0600 MDT m=+746.655242158] == [bid:$9,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:50.867335397 -0600 MDT m=+748.239364160]) -2019/06/14 13:47:51 Blocking empty list... -2019/06/14 13:47:52 Blocking empty list... -2019/06/14 13:47:52 true = ([bid:$9,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:50.867335397 -0600 MDT m=+748.239364160] == [bid:$9,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:52.436153467 -0600 MDT m=+749.808182224]) -2019/06/14 13:47:53 Blocking empty list... -2019/06/14 13:47:54 true = ([bid:$9,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:52.436153467 -0600 MDT m=+749.808182224] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:54.03762827 -0600 MDT m=+751.409657021]) -2019/06/14 13:47:54 Blocking empty list... -2019/06/14 13:47:55 Blocking empty list... -2019/06/14 13:47:55 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:54.03762827 -0600 MDT m=+751.409657021] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:55.599953643 -0600 MDT m=+752.971982388]) -2019/06/14 13:47:56 Blocking empty list... -2019/06/14 13:47:57 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:55.599953643 -0600 MDT m=+752.971982388] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:57.206392983 -0600 MDT m=+754.578421720]) -2019/06/14 13:47:57 Blocking empty list... -2019/06/14 13:47:58 Blocking empty list... -2019/06/14 13:47:58 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:57.206392983 -0600 MDT m=+754.578421720] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:58.788865612 -0600 MDT m=+756.160894358]) -2019/06/14 13:47:59 Blocking empty list... -2019/06/14 13:48:00 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:58.788865612 -0600 MDT m=+756.160894358] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:00.334639215 -0600 MDT m=+757.706667963]) -2019/06/14 13:48:00 Blocking empty list... -2019/06/14 13:48:01 Blocking empty list... -2019/06/14 13:48:01 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:00.334639215 -0600 MDT m=+757.706667963] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:01.910710068 -0600 MDT m=+759.282738803]) -2019/06/14 13:48:02 Blocking empty list... -2019/06/14 13:48:03 Blocking empty list... -2019/06/14 13:48:03 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:01.910710068 -0600 MDT m=+759.282738803] == [bid:$9,600 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:03.504547263 -0600 MDT m=+760.876576007]) -2019/06/14 13:48:04 Blocking empty list... -2019/06/14 13:48:05 true = ([bid:$9,600 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:03.504547263 -0600 MDT m=+760.876576007] == [bid:$9,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:05.075648795 -0600 MDT m=+762.447677531]) -2019/06/14 13:48:05 Blocking empty list... -2019/06/14 13:48:06 Blocking empty list... -2019/06/14 13:48:06 true = ([bid:$9,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:05.075648795 -0600 MDT m=+762.447677531] == [bid:$9,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:06.677601587 -0600 MDT m=+764.049630333]) -2019/06/14 13:48:07 Blocking empty list... -2019/06/14 13:48:08 true = ([bid:$9,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:06.677601587 -0600 MDT m=+764.049630333] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:08.243314838 -0600 MDT m=+765.615343582]) -2019/06/14 13:48:08 Blocking empty list... -2019/06/14 13:48:09 Blocking empty list... -2019/06/14 13:48:09 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:08.243314838 -0600 MDT m=+765.615343582] == [bid:$9,800 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:09.816861858 -0600 MDT m=+767.188890627]) -2019/06/14 13:48:10 Blocking empty list... -2019/06/14 13:48:11 Blocking empty list... -2019/06/14 13:48:11 true = ([bid:$9,800 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:09.816861858 -0600 MDT m=+767.188890627] == [bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:11.401970852 -0600 MDT m=+768.773999592]) -2019/06/14 13:48:12 Blocking empty list... -2019/06/14 13:48:13 Blocking empty list... -2019/06/14 13:48:13 true = ([bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:11.401970852 -0600 MDT m=+768.773999592] == [bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:13.385943303 -0600 MDT m=+770.757972044]) -2019/06/14 13:48:14 Blocking empty list... -2019/06/14 13:48:15 true = ([bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:13.385943303 -0600 MDT m=+770.757972044] == [bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:15.010900934 -0600 MDT m=+772.382929685]) -2019/06/14 13:48:15 Blocking empty list... -2019/06/14 13:48:16 Blocking empty list... -2019/06/14 13:48:16 true = ([bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:15.010900934 -0600 MDT m=+772.382929685] == [bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:16.582646794 -0600 MDT m=+773.954675536]) -2019/06/14 13:48:17 Blocking empty list... -2019/06/14 13:48:18 true = ([bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:16.582646794 -0600 MDT m=+773.954675536] == [bid:$10,000 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:18.158918859 -0600 MDT m=+775.530947603]) -2019/06/14 13:48:18 Blocking empty list... -2019/06/14 13:48:19 Blocking empty list... -2019/06/14 13:48:19 true = ([bid:$10,000 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:18.158918859 -0600 MDT m=+775.530947603] == [bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:19.762418285 -0600 MDT m=+777.134447038]) -2019/06/14 13:48:20 Blocking empty list... -2019/06/14 13:48:21 Blocking empty list... -2019/06/14 13:48:21 true = ([bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:19.762418285 -0600 MDT m=+777.134447038] == [bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:21.358132544 -0600 MDT m=+778.730161288]) -2019/06/14 13:48:22 Blocking empty list... -2019/06/14 13:48:22 true = ([bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:21.358132544 -0600 MDT m=+778.730161288] == [bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:22.960404858 -0600 MDT m=+780.332433601]) -2019/06/14 13:48:23 Blocking empty list... -2019/06/14 13:48:24 Blocking empty list... -2019/06/14 13:48:24 true = ([bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:22.960404858 -0600 MDT m=+780.332433601] == [bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:24.549422086 -0600 MDT m=+781.921450823]) -2019/06/14 13:48:25 Blocking empty list... -2019/06/14 13:48:26 true = ([bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:24.549422086 -0600 MDT m=+781.921450823] == [bid:$10,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:26.125843233 -0600 MDT m=+783.497871975]) -2019/06/14 13:48:26 Blocking empty list... -2019/06/14 13:48:27 Blocking empty list... -2019/06/14 13:48:27 true = ([bid:$10,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:26.125843233 -0600 MDT m=+783.497871975] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:27.690221589 -0600 MDT m=+785.062250326]) -2019/06/14 13:48:28 Blocking empty list... -2019/06/14 13:48:29 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:27.690221589 -0600 MDT m=+785.062250326] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:29.264012162 -0600 MDT m=+786.636040912]) -2019/06/14 13:48:29 Blocking empty list... -2019/06/14 13:48:30 Blocking empty list... -2019/06/14 13:48:30 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:29.264012162 -0600 MDT m=+786.636040912] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:30.816621488 -0600 MDT m=+788.188650236]) -2019/06/14 13:48:31 Blocking empty list... -2019/06/14 13:48:32 Blocking empty list... -2019/06/14 13:48:33 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:30.816621488 -0600 MDT m=+788.188650236] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:33.096096709 -0600 MDT m=+790.468125473]) -2019/06/14 13:48:33 Blocking empty list... -2019/06/14 13:48:34 Blocking empty list... -2019/06/14 13:48:34 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:33.096096709 -0600 MDT m=+790.468125473] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:34.681657183 -0600 MDT m=+792.053685940]) -2019/06/14 13:48:35 Blocking empty list... -2019/06/14 13:48:36 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:34.681657183 -0600 MDT m=+792.053685940] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:36.241164634 -0600 MDT m=+793.613193386]) -2019/06/14 13:48:36 Blocking empty list... -2019/06/14 13:48:37 Blocking empty list... -2019/06/14 13:48:37 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:36.241164634 -0600 MDT m=+793.613193386] == [bid:Bonus title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:37.85757393 -0600 MDT m=+795.229602667]) -2019/06/14 13:48:38 Blocking empty list... -2019/06/14 13:48:39 Blocking empty list... -2019/06/14 13:48:39 true = ([bid:Bonus title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:37.85757393 -0600 MDT m=+795.229602667] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:39.441577958 -0600 MDT m=+796.813606720]) -2019/06/14 13:48:40 Blocking empty list... -2019/06/14 13:48:41 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:39.441577958 -0600 MDT m=+796.813606720] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:41.061072437 -0600 MDT m=+798.433101174]) -2019/06/14 13:48:41 Blocking empty list... -2019/06/14 13:48:42 Blocking empty list... -2019/06/14 13:48:42 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:41.061072437 -0600 MDT m=+798.433101174] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:42.682457336 -0600 MDT m=+800.054486086]) -2019/06/14 13:48:43 Blocking empty list... -2019/06/14 13:48:44 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:42.682457336 -0600 MDT m=+800.054486086] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:44.256806707 -0600 MDT m=+801.628835462]) -2019/06/14 13:48:44 Blocking empty list... -2019/06/14 13:48:45 Blocking empty list... -2019/06/14 13:48:45 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:44.256806707 -0600 MDT m=+801.628835462] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:45.967221097 -0600 MDT m=+803.339249831]) -2019/06/14 13:48:46 Blocking empty list... -2019/06/14 13:48:47 Blocking empty list... -2019/06/14 13:48:47 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:45.967221097 -0600 MDT m=+803.339249831] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:47.517339333 -0600 MDT m=+804.889368069]) -2019/06/14 13:48:48 Blocking empty list... -2019/06/14 13:48:48 parse watched -2019/06/14 13:48:49 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:47.517339333 -0600 MDT m=+804.889368069] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:49.118780967 -0600 MDT m=+806.490809704]) -2019/06/14 13:48:49 Blocking empty list... -2019/06/14 13:48:50 parse watched -2019/06/14 13:48:50 Blocking empty list... -2019/06/14 13:48:50 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:49.118780967 -0600 MDT m=+806.490809704] == [bid:Next Item on title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:50.667028521 -0600 MDT m=+808.039057254]) -2019/06/14 13:48:51 Blocking empty list... -2019/06/14 13:48:51 parse watched -2019/06/14 13:48:52 DETAIL $7,689 $24,039 -2019/06/14 13:48:52 false = ([bid:Next Item on title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:50.667028521 -0600 MDT m=+808.039057254] == [bid:$1,650 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:52.297679181 -0600 MDT m=+809.669707932]) -2019/06/14 13:48:52 DETAIL 1.8L 4 3.6L 6 -2019/06/14 13:48:52 Blocking empty list... -2019/06/14 13:48:52 TOP -2019/06/14 13:48:52 parse watched -2019/06/14 13:48:52 C [bid:$1,650 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:52.994021004 -0600 MDT m=+810.366049754] -2019/06/14 13:48:53 Blocking empty list... -2019/06/14 13:48:54 parse watched -2019/06/14 13:48:54 Blocking empty list... -2019/06/14 13:48:54 true = ([bid:$1,650 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:52.994021004 -0600 MDT m=+810.366049754] == [bid:Bid title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:54.583269582 -0600 MDT m=+811.955298323]) -2019/06/14 13:48:55 Blocking empty list... -2019/06/14 13:48:55 parse watched -2019/06/14 13:48:56 true = ([bid:Bid title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:54.583269582 -0600 MDT m=+811.955298323] == [bid:$1,700 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:56.181033887 -0600 MDT m=+813.553062652]) -2019/06/14 13:48:56 Blocking empty list... -2019/06/14 13:48:57 parse watched -2019/06/14 13:48:57 Blocking empty list... -2019/06/14 13:48:57 true = ([bid:$1,700 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:56.181033887 -0600 MDT m=+813.553062652] == [bid:$1,800 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:57.784934977 -0600 MDT m=+815.156963727]) -2019/06/14 13:48:58 Blocking empty list... -2019/06/14 13:48:58 parse watched -2019/06/14 13:48:59 Blocking empty list... -2019/06/14 13:48:59 true = ([bid:$1,800 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:57.784934977 -0600 MDT m=+815.156963727] == [bid:$1,850 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:59.373646279 -0600 MDT m=+816.745675026]) -2019/06/14 13:49:00 Blocking empty list... -2019/06/14 13:49:00 parse watched -2019/06/14 13:49:00 true = ([bid:$1,850 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:59.373646279 -0600 MDT m=+816.745675026] == [bid:$1,900 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:49:00.956853996 -0600 MDT m=+818.328882743]) -2019/06/14 13:49:01 Blocking empty list... -2019/06/14 13:49:02 parse watched -2019/06/14 13:49:02 Blocking empty list... -2019/06/14 13:49:02 true = ([bid:$1,900 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:49:00.956853996 -0600 MDT m=+818.328882743] == [bid:Bid title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:49:02.537892071 -0600 MDT m=+819.909920818]) -2019/06/14 13:49:03 Blocking empty list... -2019/06/14 13:49:03 stale element reference: stale element reference: element is not attached to the page document - (Session info: chrome=75.0.3770.80) -2019/06/14 13:49:04 Blocking empty list... -2019/06/14 13:49:05 Blocking empty list... -2019/06/14 13:49:06 Blocking empty list... diff --git a/copart/testdata/log2 b/copart/testdata/log2 deleted file mode 100644 index b70af68..0000000 --- a/copart/testdata/log2 +++ /dev/null @@ -1,242 +0,0 @@ -2019/06/14 13:44:33 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:32.100278808 -0600 MDT m=+549.472307556] == [bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:33.649979402 -0600 MDT m=+551.022008143]) -2019/06/14 13:44:34 true = ([bid:$4,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:33.263653682 -0600 MDT m=+550.635682442] == [bid:$4,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:34.853057112 -0600 MDT m=+552.225085858]) -2019/06/14 13:44:35 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:33.649979402 -0600 MDT m=+551.022008143] == [bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:35.209579405 -0600 MDT m=+552.581608152]) -2019/06/14 13:44:36 true = ([bid:$4,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:34.853057112 -0600 MDT m=+552.225085858] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:36.442979544 -0600 MDT m=+553.815008292]) -2019/06/14 13:44:36 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:35.209579405 -0600 MDT m=+552.581608152] == [bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:36.765530586 -0600 MDT m=+554.137559334]) -2019/06/14 13:44:37 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:36.442979544 -0600 MDT m=+553.815008292] == [bid:$4,700 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:37.998799546 -0600 MDT m=+555.370828308]) -2019/06/14 13:44:38 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:36.765530586 -0600 MDT m=+554.137559334] == [bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:38.309365279 -0600 MDT m=+555.681394016]) -2019/06/14 13:44:39 true = ([bid:$4,700 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:37.998799546 -0600 MDT m=+555.370828308] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:39.632325485 -0600 MDT m=+557.004354235]) -2019/06/14 13:44:39 true = ([bid:$750 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:38.309365279 -0600 MDT m=+555.681394016] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:39.876272196 -0600 MDT m=+557.248300968]) -2019/06/14 13:44:41 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:39.632325485 -0600 MDT m=+557.004354235] == [bid:$4,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:41.210836371 -0600 MDT m=+558.582865114]) -2019/06/14 13:44:41 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:39.876272196 -0600 MDT m=+557.248300968] == [bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:41.434892417 -0600 MDT m=+558.806921162]) -2019/06/14 13:44:42 true = ([bid:$4,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:41.210836371 -0600 MDT m=+558.582865114] == [bid:$4,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:42.800903683 -0600 MDT m=+560.172932419]) -2019/06/14 13:44:42 true = ([bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:41.434892417 -0600 MDT m=+558.806921162] == [bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:42.975489596 -0600 MDT m=+560.347518332]) -2019/06/14 13:44:44 true = ([bid:$4,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:42.800903683 -0600 MDT m=+560.172932419] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:44.383681507 -0600 MDT m=+561.755710284]) -2019/06/14 13:44:44 true = ([bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:42.975489596 -0600 MDT m=+560.347518332] == [bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:44.533291771 -0600 MDT m=+561.905320516]) -2019/06/14 13:44:46 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:44.383681507 -0600 MDT m=+561.755710284] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:46.651673699 -0600 MDT m=+564.023702462]) -2019/06/14 13:44:46 true = ([bid:$775 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:44.533291771 -0600 MDT m=+561.905320516] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:46.71137253 -0600 MDT m=+564.083401292]) -2019/06/14 13:44:49 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:46.651673699 -0600 MDT m=+564.023702462] == [bid:$5,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:49.04381699 -0600 MDT m=+566.415845754]) -2019/06/14 13:44:49 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:46.71137253 -0600 MDT m=+564.083401292] == [bid:$800 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:49.075309089 -0600 MDT m=+566.447337833]) -2019/06/14 13:44:50 true = ([bid:$5,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:49.04381699 -0600 MDT m=+566.415845754] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:50.626495561 -0600 MDT m=+567.998524315]) -2019/06/14 13:44:50 true = ([bid:$800 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:49.075309089 -0600 MDT m=+566.447337833] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:50.637091128 -0600 MDT m=+568.009119874]) -2019/06/14 13:44:52 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:50.637091128 -0600 MDT m=+568.009119874] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:52.201787818 -0600 MDT m=+569.573816555]) -2019/06/14 13:44:52 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:50.626495561 -0600 MDT m=+567.998524315] == [bid:$5,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:52.210615356 -0600 MDT m=+569.582644106]) -2019/06/14 13:44:53 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:52.201787818 -0600 MDT m=+569.573816555] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:53.785375027 -0600 MDT m=+571.157403770]) -2019/06/14 13:44:53 true = ([bid:$5,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:52.210615356 -0600 MDT m=+569.582644106] == [bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:53.794478475 -0600 MDT m=+571.166507235]) -2019/06/14 13:44:55 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:53.785375027 -0600 MDT m=+571.157403770] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:55.341663372 -0600 MDT m=+572.713692125]) -2019/06/14 13:44:55 true = ([bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:53.794478475 -0600 MDT m=+571.166507235] == [bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:55.347619414 -0600 MDT m=+572.719648150]) -2019/06/14 13:44:56 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:55.341663372 -0600 MDT m=+572.713692125] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:56.887273765 -0600 MDT m=+574.259302513]) -2019/06/14 13:44:56 true = ([bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:55.347619414 -0600 MDT m=+572.719648150] == [bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:56.894005011 -0600 MDT m=+574.266033759]) -2019/06/14 13:44:58 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:56.887273765 -0600 MDT m=+574.259302513] == [bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:58.467862845 -0600 MDT m=+575.839891596]) -2019/06/14 13:44:58 true = ([bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:56.894005011 -0600 MDT m=+574.266033759] == [bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:58.467875669 -0600 MDT m=+575.839904419]) -2019/06/14 13:45:00 true = ([bid:$825 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:44:58.467862845 -0600 MDT m=+575.839891596] == [bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:00.029947727 -0600 MDT m=+577.401976473]) -2019/06/14 13:45:00 true = ([bid:$5,900 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:44:58.467875669 -0600 MDT m=+575.839904419] == [bid:$6,000 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:00.033625382 -0600 MDT m=+577.405654118]) -2019/06/14 13:45:01 true = ([bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:00.029947727 -0600 MDT m=+577.401976473] == [bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:01.617679613 -0600 MDT m=+578.989708348]) -2019/06/14 13:45:01 true = ([bid:$6,000 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:00.033625382 -0600 MDT m=+577.405654118] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:01.626412103 -0600 MDT m=+578.998440838]) -2019/06/14 13:45:03 true = ([bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:01.617679613 -0600 MDT m=+578.989708348] == [bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:03.182911975 -0600 MDT m=+580.554940742]) -2019/06/14 13:45:03 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:01.626412103 -0600 MDT m=+578.998440838] == [bid:$6,100 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:03.199787677 -0600 MDT m=+580.571816439]) -2019/06/14 13:45:04 true = ([bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:03.182911975 -0600 MDT m=+580.554940742] == [bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:04.746031495 -0600 MDT m=+582.118060242]) -2019/06/14 13:45:04 true = ([bid:$6,100 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:03.199787677 -0600 MDT m=+580.571816439] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:04.767179705 -0600 MDT m=+582.139208448]) -2019/06/14 13:45:06 true = ([bid:$850 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:04.746031495 -0600 MDT m=+582.118060242] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:06.310545892 -0600 MDT m=+583.682574636]) -2019/06/14 13:45:06 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:04.767179705 -0600 MDT m=+582.139208448] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:06.335166826 -0600 MDT m=+583.707195567]) -2019/06/14 13:45:07 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:06.310545892 -0600 MDT m=+583.682574636] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:07.883620143 -0600 MDT m=+585.255648901]) -2019/06/14 13:45:07 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:06.335166826 -0600 MDT m=+583.707195567] == [bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:07.907584605 -0600 MDT m=+585.279613340]) -2019/06/14 13:45:09 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:07.883620143 -0600 MDT m=+585.255648901] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:09.45518732 -0600 MDT m=+586.827216080]) -2019/06/14 13:45:09 true = ([bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:07.907584605 -0600 MDT m=+585.279613340] == [bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:09.4663536 -0600 MDT m=+586.838382341]) -2019/06/14 13:45:11 true = ([bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:09.4663536 -0600 MDT m=+586.838382341] == [bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:11.714388541 -0600 MDT m=+589.086417329]) -2019/06/14 13:45:11 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:09.45518732 -0600 MDT m=+586.827216080] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:11.744893291 -0600 MDT m=+589.116922050]) -2019/06/14 13:45:13 true = ([bid:$6,400 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:11.714388541 -0600 MDT m=+589.086417329] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:13.45008916 -0600 MDT m=+590.822117920]) -2019/06/14 13:45:13 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:11.744893291 -0600 MDT m=+589.116922050] == [bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:13.467717253 -0600 MDT m=+590.839745995]) -2019/06/14 13:45:15 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:13.45008916 -0600 MDT m=+590.822117920] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:15.028250727 -0600 MDT m=+592.400279501]) -2019/06/14 13:45:15 true = ([bid:$875 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:13.467717253 -0600 MDT m=+590.839745995] == [bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:15.029365652 -0600 MDT m=+592.401394387]) -2019/06/14 13:45:16 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:15.028250727 -0600 MDT m=+592.400279501] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:16.574778848 -0600 MDT m=+593.946807598]) -2019/06/14 13:45:16 true = ([bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:15.029365652 -0600 MDT m=+592.401394387] == [bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:16.581757004 -0600 MDT m=+593.953785791]) -2019/06/14 13:45:18 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:16.574778848 -0600 MDT m=+593.946807598] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:18.148148234 -0600 MDT m=+595.520177008]) -2019/06/14 13:45:18 true = ([bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:16.581757004 -0600 MDT m=+593.953785791] == [bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:18.157707579 -0600 MDT m=+595.529736321]) -2019/06/14 13:45:19 true = ([bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:18.157707579 -0600 MDT m=+595.529736321] == [bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:19.727213553 -0600 MDT m=+597.099242300]) -2019/06/14 13:45:19 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:18.148148234 -0600 MDT m=+595.520177008] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:19.732192656 -0600 MDT m=+597.104221399]) -2019/06/14 13:45:21 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:19.732192656 -0600 MDT m=+597.104221399] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:21.300980036 -0600 MDT m=+598.673008782]) -2019/06/14 13:45:21 true = ([bid:$900 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:19.727213553 -0600 MDT m=+597.099242300] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:21.307722352 -0600 MDT m=+598.679751090]) -2019/06/14 13:45:23 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:21.300980036 -0600 MDT m=+598.673008782] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:23.379902263 -0600 MDT m=+600.751931031]) -2019/06/14 13:45:23 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:21.307722352 -0600 MDT m=+598.679751090] == [bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:23.392826934 -0600 MDT m=+600.764855701]) -2019/06/14 13:45:25 true = ([bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:23.392826934 -0600 MDT m=+600.764855701] == [bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:25.71438718 -0600 MDT m=+603.086415961]) -2019/06/14 13:45:25 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:23.379902263 -0600 MDT m=+600.751931031] == [bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:25.759869463 -0600 MDT m=+603.131898219]) -2019/06/14 13:45:27 true = ([bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:25.71438718 -0600 MDT m=+603.086415961] == [bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:27.748442664 -0600 MDT m=+605.120471419]) -2019/06/14 13:45:27 true = ([bid:$6,500 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:25.759869463 -0600 MDT m=+603.131898219] == [bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:27.762685583 -0600 MDT m=+605.134714377]) -2019/06/14 13:45:29 true = ([bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:27.762685583 -0600 MDT m=+605.134714377] == [bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:29.693781661 -0600 MDT m=+607.065810420]) -2019/06/14 13:45:29 true = ([bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:27.748442664 -0600 MDT m=+605.120471419] == [bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:29.7037451 -0600 MDT m=+607.075773851]) -2019/06/14 13:45:31 true = ([bid:$925 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:29.7037451 -0600 MDT m=+607.075773851] == [bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:31.581812917 -0600 MDT m=+608.953841681]) -2019/06/14 13:45:31 true = ([bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:29.693781661 -0600 MDT m=+607.065810420] == [bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:31.603363109 -0600 MDT m=+608.975391926]) -2019/06/14 13:45:33 true = ([bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:31.581812917 -0600 MDT m=+608.953841681] == [bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:33.129003954 -0600 MDT m=+610.501032706]) -2019/06/14 13:45:33 true = ([bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:31.603363109 -0600 MDT m=+608.975391926] == [bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:33.154188308 -0600 MDT m=+610.526217074]) -2019/06/14 13:45:34 true = ([bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:33.129003954 -0600 MDT m=+610.501032706] == [bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:34.698293537 -0600 MDT m=+612.070322308]) -2019/06/14 13:45:34 true = ([bid:$6,600 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:33.154188308 -0600 MDT m=+610.526217074] == [bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:34.740571037 -0600 MDT m=+612.112599799]) -2019/06/14 13:45:36 true = ([bid:$950 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:34.698293537 -0600 MDT m=+612.070322308] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:36.670375341 -0600 MDT m=+614.042404108]) -2019/06/14 13:45:36 true = ([bid:Bid title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:34.740571037 -0600 MDT m=+612.112599799] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:36.714017157 -0600 MDT m=+614.086045966]) -2019/06/14 13:45:38 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:36.670375341 -0600 MDT m=+614.042404108] == [bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:38.247777676 -0600 MDT m=+615.619806410]) -2019/06/14 13:45:38 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:36.714017157 -0600 MDT m=+614.086045966] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:38.270868543 -0600 MDT m=+615.642897295]) -2019/06/14 13:45:39 true = ([bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:38.247777676 -0600 MDT m=+615.619806410] == [bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:39.820522402 -0600 MDT m=+617.192551139]) -2019/06/14 13:45:39 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:38.270868543 -0600 MDT m=+615.642897295] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:39.840696355 -0600 MDT m=+617.212725106]) -2019/06/14 13:45:41 true = ([bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:39.820522402 -0600 MDT m=+617.192551139] == [bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:41.865548025 -0600 MDT m=+619.237576784]) -2019/06/14 13:45:41 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:39.840696355 -0600 MDT m=+617.212725106] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:41.87975323 -0600 MDT m=+619.251782000]) -2019/06/14 13:45:44 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:41.87975323 -0600 MDT m=+619.251782000] == [bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:44.12899537 -0600 MDT m=+621.501024149]) -2019/06/14 13:45:44 true = ([bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:41.865548025 -0600 MDT m=+619.237576784] == [bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:44.160166521 -0600 MDT m=+621.532195282]) -2019/06/14 13:45:45 true = ([bid:$6,800 title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:44.12899537 -0600 MDT m=+621.501024149] == [bid:Next Item on title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:45.698231339 -0600 MDT m=+623.070260115]) -2019/06/14 13:45:45 true = ([bid:$975 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:44.160166521 -0600 MDT m=+621.532195282] == [bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:45.730591096 -0600 MDT m=+623.102619832]) -2019/06/14 13:45:47 true = ([bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:45.730591096 -0600 MDT m=+623.102619832] == [bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:47.300433357 -0600 MDT m=+624.672462125]) -2019/06/14 13:45:47 false = ([bid:Next Item on title:2015 LEXUS RC 350 watched:false images:4 when:2019-06-14 13:45:45.698231339 -0600 MDT m=+623.070260115] == [bid:$950 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:47.326540361 -0600 MDT m=+624.698569101]) -2019/06/14 13:45:48 true = ([bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:47.300433357 -0600 MDT m=+624.672462125] == [bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:48.875565095 -0600 MDT m=+626.247593841]) -2019/06/14 13:45:49 true = ([bid:$950 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:47.970680447 -0600 MDT m=+625.342709201] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:49.530146108 -0600 MDT m=+626.902174848]) -2019/06/14 13:45:50 true = ([bid:$1,000 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:48.875565095 -0600 MDT m=+626.247593841] == [bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:50.441141654 -0600 MDT m=+627.813170424]) -2019/06/14 13:45:51 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:49.530146108 -0600 MDT m=+626.902174848] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:51.092703578 -0600 MDT m=+628.464732312]) -2019/06/14 13:45:52 true = ([bid:Bid title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:50.441141654 -0600 MDT m=+627.813170424] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:52.014105523 -0600 MDT m=+629.386134268]) -2019/06/14 13:45:52 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:51.092703578 -0600 MDT m=+628.464732312] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:52.666563883 -0600 MDT m=+630.038592628]) -2019/06/14 13:45:53 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:52.014105523 -0600 MDT m=+629.386134268] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:53.557551959 -0600 MDT m=+630.929580695]) -2019/06/14 13:45:54 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:52.666563883 -0600 MDT m=+630.038592628] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:54.239611178 -0600 MDT m=+631.611639922]) -2019/06/14 13:45:55 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:53.557551959 -0600 MDT m=+630.929580695] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:55.114075035 -0600 MDT m=+632.486103788]) -2019/06/14 13:45:55 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:54.239611178 -0600 MDT m=+631.611639922] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:55.804221548 -0600 MDT m=+633.176250310]) -2019/06/14 13:45:56 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:55.114075035 -0600 MDT m=+632.486103788] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:56.706568281 -0600 MDT m=+634.078597042]) -2019/06/14 13:45:57 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:55.804221548 -0600 MDT m=+633.176250310] == [bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:57.361048223 -0600 MDT m=+634.733076974]) -2019/06/14 13:45:58 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:56.706568281 -0600 MDT m=+634.078597042] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:58.261410026 -0600 MDT m=+635.633438778]) -2019/06/14 13:45:58 true = ([bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:57.361048223 -0600 MDT m=+634.733076974] == [bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:58.912388766 -0600 MDT m=+636.284417514]) -2019/06/14 13:45:59 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:58.261410026 -0600 MDT m=+635.633438778] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:59.82282752 -0600 MDT m=+637.194856272]) -2019/06/14 13:46:00 true = ([bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:45:58.912388766 -0600 MDT m=+636.284417514] == [bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:00.465703716 -0600 MDT m=+637.837732454]) -2019/06/14 13:46:01 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:45:59.82282752 -0600 MDT m=+637.194856272] == [bid:Bonus title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:01.397741474 -0600 MDT m=+638.769770221]) -2019/06/14 13:46:02 true = ([bid:$1,300 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:00.465703716 -0600 MDT m=+637.837732454] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:02.023624181 -0600 MDT m=+639.395652927]) -2019/06/14 13:46:03 true = ([bid:Bonus title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:01.397741474 -0600 MDT m=+638.769770221] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:03.006045999 -0600 MDT m=+640.378074735]) -2019/06/14 13:46:03 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:02.023624181 -0600 MDT m=+639.395652927] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:03.58135933 -0600 MDT m=+640.953388064]) -2019/06/14 13:46:04 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:03.006045999 -0600 MDT m=+640.378074735] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:04.578964932 -0600 MDT m=+641.950993680]) -2019/06/14 13:46:05 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:03.58135933 -0600 MDT m=+640.953388064] == [bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:05.140126563 -0600 MDT m=+642.512155309]) -2019/06/14 13:46:06 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:04.578964932 -0600 MDT m=+641.950993680] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:06.178025052 -0600 MDT m=+643.550053786]) -2019/06/14 13:46:06 true = ([bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:05.140126563 -0600 MDT m=+642.512155309] == [bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:06.697389814 -0600 MDT m=+644.069418561]) -2019/06/14 13:46:07 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:06.178025052 -0600 MDT m=+643.550053786] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:07.780702876 -0600 MDT m=+645.152731610]) -2019/06/14 13:46:08 true = ([bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:06.697389814 -0600 MDT m=+644.069418561] == [bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:08.248101491 -0600 MDT m=+645.620130237]) -2019/06/14 13:46:09 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:07.780702876 -0600 MDT m=+645.152731610] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:09.386820437 -0600 MDT m=+646.758849193]) -2019/06/14 13:46:09 true = ([bid:$1,400 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:08.248101491 -0600 MDT m=+645.620130237] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:09.818455714 -0600 MDT m=+647.190484458]) -2019/06/14 13:46:10 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:09.386820437 -0600 MDT m=+646.758849193] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:10.971483398 -0600 MDT m=+648.343512143]) -2019/06/14 13:46:11 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:09.818455714 -0600 MDT m=+647.190484458] == [bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:11.378239494 -0600 MDT m=+648.750268245]) -2019/06/14 13:46:12 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:10.971483398 -0600 MDT m=+648.343512143] == [bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:12.537834103 -0600 MDT m=+649.909862840]) -2019/06/14 13:46:12 true = ([bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:11.378239494 -0600 MDT m=+648.750268245] == [bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:12.921818006 -0600 MDT m=+650.293846777]) -2019/06/14 13:46:14 true = ([bid:$1,050 title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:12.537834103 -0600 MDT m=+649.909862840] == [bid:Next Item on title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:14.115315236 -0600 MDT m=+651.487343970]) -2019/06/14 13:46:14 true = ([bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:12.921818006 -0600 MDT m=+650.293846777] == [bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:14.471067849 -0600 MDT m=+651.843096596]) -2019/06/14 13:46:15 false = ([bid:Next Item on title:2008 NISSAN ALTIMA 2.5 watched:false images:4 when:2019-06-14 13:46:14.115315236 -0600 MDT m=+651.487343970] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:15.765589239 -0600 MDT m=+653.137617986]) -2019/06/14 13:46:16 true = ([bid:$1,500 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:14.471067849 -0600 MDT m=+651.843096596] == [bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:16.02007468 -0600 MDT m=+653.392103448]) -2019/06/14 13:46:17 true = ([bid:Bid title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:16.02007468 -0600 MDT m=+653.392103448] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:17.651753355 -0600 MDT m=+655.023782106]) -2019/06/14 13:46:17 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:16.390025771 -0600 MDT m=+653.762054512] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:17.945675122 -0600 MDT m=+655.317703865]) -2019/06/14 13:46:19 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:17.651753355 -0600 MDT m=+655.023782106] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:19.255879024 -0600 MDT m=+656.627907787]) -2019/06/14 13:46:19 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:17.945675122 -0600 MDT m=+655.317703865] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:19.503173988 -0600 MDT m=+656.875202744]) -2019/06/14 13:46:20 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:19.255879024 -0600 MDT m=+656.627907787] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:20.879860426 -0600 MDT m=+658.251889173]) -2019/06/14 13:46:21 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:19.503173988 -0600 MDT m=+656.875202744] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:21.074419533 -0600 MDT m=+658.446448280]) -2019/06/14 13:46:22 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:20.879860426 -0600 MDT m=+658.251889173] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:22.472975892 -0600 MDT m=+659.845004657]) -2019/06/14 13:46:22 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:21.074419533 -0600 MDT m=+658.446448280] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:22.638350764 -0600 MDT m=+660.010379508]) -2019/06/14 13:46:24 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:22.472975892 -0600 MDT m=+659.845004657] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:24.039286396 -0600 MDT m=+661.411315153]) -2019/06/14 13:46:24 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:22.638350764 -0600 MDT m=+660.010379508] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:24.210076006 -0600 MDT m=+661.582104749]) -2019/06/14 13:46:25 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:24.039286396 -0600 MDT m=+661.411315153] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:25.623141495 -0600 MDT m=+662.995170232]) -2019/06/14 13:46:25 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:24.210076006 -0600 MDT m=+661.582104749] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:25.77105872 -0600 MDT m=+663.143087460]) -2019/06/14 13:46:27 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:25.623141495 -0600 MDT m=+662.995170232] == [bid:Bonus title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:27.217110188 -0600 MDT m=+664.589138960]) -2019/06/14 13:46:27 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:25.77105872 -0600 MDT m=+663.143087460] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:27.316556146 -0600 MDT m=+664.688584889]) -2019/06/14 13:46:28 true = ([bid:Bonus title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:27.217110188 -0600 MDT m=+664.589138960] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:28.804421116 -0600 MDT m=+666.176449864]) -2019/06/14 13:46:28 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:27.316556146 -0600 MDT m=+664.688584889] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:28.874885439 -0600 MDT m=+666.246914183]) -2019/06/14 13:46:30 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:28.804421116 -0600 MDT m=+666.176449864] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:30.378302778 -0600 MDT m=+667.750331525]) -2019/06/14 13:46:30 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:28.874885439 -0600 MDT m=+666.246914183] == [bid:Bonus title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:30.430949455 -0600 MDT m=+667.802978198]) -2019/06/14 13:46:31 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:30.378302778 -0600 MDT m=+667.750331525] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:31.953632384 -0600 MDT m=+669.325661131]) -2019/06/14 13:46:31 true = ([bid:Bonus title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:30.430949455 -0600 MDT m=+667.802978198] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:31.996367484 -0600 MDT m=+669.368396221]) -2019/06/14 13:46:33 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:31.953632384 -0600 MDT m=+669.325661131] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:33.521086939 -0600 MDT m=+670.893115677]) -2019/06/14 13:46:33 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:31.996367484 -0600 MDT m=+669.368396221] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:33.571119989 -0600 MDT m=+670.943148735]) -2019/06/14 13:46:35 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:33.521086939 -0600 MDT m=+670.893115677] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:35.111873847 -0600 MDT m=+672.483902604]) -2019/06/14 13:46:35 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:33.571119989 -0600 MDT m=+670.943148735] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:35.140044919 -0600 MDT m=+672.512073682]) -2019/06/14 13:46:36 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:35.111873847 -0600 MDT m=+672.483902604] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:36.691188678 -0600 MDT m=+674.063217431]) -2019/06/14 13:46:36 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:35.140044919 -0600 MDT m=+672.512073682] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:36.72922032 -0600 MDT m=+674.101249074]) -2019/06/14 13:46:38 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:36.691188678 -0600 MDT m=+674.063217431] == [bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:38.271432569 -0600 MDT m=+675.643461305]) -2019/06/14 13:46:38 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:36.72922032 -0600 MDT m=+674.101249074] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:38.298540491 -0600 MDT m=+675.670569229]) -2019/06/14 13:46:39 true = ([bid:$1,550 title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:38.271432569 -0600 MDT m=+675.643461305] == [bid:Next Item on title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:39.854917796 -0600 MDT m=+677.226946542]) -2019/06/14 13:46:39 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:38.298540491 -0600 MDT m=+675.670569229] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:39.86269596 -0600 MDT m=+677.234724702]) -2019/06/14 13:46:41 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:39.86269596 -0600 MDT m=+677.234724702] == [bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:41.421462137 -0600 MDT m=+678.793490880]) -2019/06/14 13:46:41 false = ([bid:Next Item on title:2007 CHEVROLET SILVERADO C1500 CLASSIC watched:false images:4 when:2019-06-14 13:46:39.854917796 -0600 MDT m=+677.226946542] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:41.444806466 -0600 MDT m=+678.816835202]) -2019/06/14 13:46:42 true = ([bid:$15,000 title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:41.421462137 -0600 MDT m=+678.793490880] == [bid:Sold on title:2016 GMC YUKON XL DENALI watched:false images:4 when:2019-06-14 13:46:42.978837839 -0600 MDT m=+680.350866588]) -2019/06/14 13:46:43 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:42.058019248 -0600 MDT m=+679.430047994] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:43.652922025 -0600 MDT m=+681.024950771]) -2019/06/14 13:46:45 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:43.652922025 -0600 MDT m=+681.024950771] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:45.212745952 -0600 MDT m=+682.584774692]) -2019/06/14 13:46:46 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:45.212745952 -0600 MDT m=+682.584774692] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:46.779907351 -0600 MDT m=+684.151936105]) -2019/06/14 13:46:48 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:46.779907351 -0600 MDT m=+684.151936105] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:48.37493185 -0600 MDT m=+685.746960593]) -2019/06/14 13:46:50 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:48.37493185 -0600 MDT m=+685.746960593] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:50.006089325 -0600 MDT m=+687.378118062]) -2019/06/14 13:46:51 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:50.006089325 -0600 MDT m=+687.378118062] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:51.571964801 -0600 MDT m=+688.943993546]) -2019/06/14 13:46:53 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:51.571964801 -0600 MDT m=+688.943993546] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:53.168928243 -0600 MDT m=+690.540956989]) -2019/06/14 13:46:54 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:53.168928243 -0600 MDT m=+690.540956989] == [bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:54.746981537 -0600 MDT m=+692.119010284]) -2019/06/14 13:46:56 true = ([bid:$475 title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:54.746981537 -0600 MDT m=+692.119010284] == [bid:Sold! title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:56.312143023 -0600 MDT m=+693.684171758]) -2019/06/14 13:46:57 false = ([bid:Sold! title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:56.312143023 -0600 MDT m=+693.684171758] == [bid:Next Item on title:2006 MAZDA 3 I watched:false images:4 when:2019-06-14 13:46:57.92401858 -0600 MDT m=+695.296047330]) -2019/06/14 13:47:00 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:46:58.636284949 -0600 MDT m=+696.008313695] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:00.228379187 -0600 MDT m=+697.600407934]) -2019/06/14 13:47:01 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:00.228379187 -0600 MDT m=+697.600407934] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:01.828705581 -0600 MDT m=+699.200734322]) -2019/06/14 13:47:03 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:01.828705581 -0600 MDT m=+699.200734322] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:03.404720678 -0600 MDT m=+700.776749424]) -2019/06/14 13:47:04 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:03.404720678 -0600 MDT m=+700.776749424] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:04.995027354 -0600 MDT m=+702.367056092]) -2019/06/14 13:47:06 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:04.995027354 -0600 MDT m=+702.367056092] == [bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:06.553799294 -0600 MDT m=+703.925828028]) -2019/06/14 13:47:08 true = ([bid:$2,400 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:06.553799294 -0600 MDT m=+703.925828028] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:08.135736901 -0600 MDT m=+705.507765668]) -2019/06/14 13:47:09 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:08.135736901 -0600 MDT m=+705.507765668] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:09.740053433 -0600 MDT m=+707.112082171]) -2019/06/14 13:47:11 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:09.740053433 -0600 MDT m=+707.112082171] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:11.355342645 -0600 MDT m=+708.727371404]) -2019/06/14 13:47:12 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:11.355342645 -0600 MDT m=+708.727371404] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:12.953509692 -0600 MDT m=+710.325538426]) -2019/06/14 13:47:14 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:12.953509692 -0600 MDT m=+710.325538426] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:14.544215968 -0600 MDT m=+711.916244711]) -2019/06/14 13:47:16 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:14.544215968 -0600 MDT m=+711.916244711] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:16.111428829 -0600 MDT m=+713.483457570]) -2019/06/14 13:47:17 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:16.111428829 -0600 MDT m=+713.483457570] == [bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:17.744188889 -0600 MDT m=+715.116217639]) -2019/06/14 13:47:19 true = ([bid:$2,450 title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:17.744188889 -0600 MDT m=+715.116217639] == [bid:Next Item on title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:19.31997218 -0600 MDT m=+716.692000915]) -2019/06/14 13:47:20 false = ([bid:Next Item on title:2009 HONDA CR-V LX watched:false images:4 when:2019-06-14 13:47:19.31997218 -0600 MDT m=+716.692000915] == [bid:$7,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:20.975960694 -0600 MDT m=+718.347989437]) -2019/06/14 13:47:23 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:21.632839693 -0600 MDT m=+719.004868430] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:23.246285645 -0600 MDT m=+720.618314400]) -2019/06/14 13:47:24 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:23.246285645 -0600 MDT m=+720.618314400] == [bid:$8,000 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:24.857513644 -0600 MDT m=+722.229542387]) -2019/06/14 13:47:26 true = ([bid:$8,000 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:24.857513644 -0600 MDT m=+722.229542387] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:26.442221476 -0600 MDT m=+723.814250212]) -2019/06/14 13:47:27 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:26.442221476 -0600 MDT m=+723.814250212] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:27.9990393 -0600 MDT m=+725.371068068]) -2019/06/14 13:47:29 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:27.9990393 -0600 MDT m=+725.371068068] == [bid:$8,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:29.61021549 -0600 MDT m=+726.982244236]) -2019/06/14 13:47:31 true = ([bid:$8,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:29.61021549 -0600 MDT m=+726.982244236] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:31.217544509 -0600 MDT m=+728.589573280]) -2019/06/14 13:47:32 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:31.217544509 -0600 MDT m=+728.589573280] == [bid:$8,400 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:32.789748968 -0600 MDT m=+730.161777737]) -2019/06/14 13:47:34 true = ([bid:$8,400 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:32.789748968 -0600 MDT m=+730.161777737] == [bid:$8,400 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:34.359088515 -0600 MDT m=+731.731117253]) -2019/06/14 13:47:36 true = ([bid:$8,400 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:34.359088515 -0600 MDT m=+731.731117253] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:36.560628194 -0600 MDT m=+733.932656950]) -2019/06/14 13:47:38 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:36.560628194 -0600 MDT m=+733.932656950] == [bid:$8,600 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:38.175551491 -0600 MDT m=+735.547580230]) -2019/06/14 13:47:39 true = ([bid:$8,600 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:38.175551491 -0600 MDT m=+735.547580230] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:39.73534806 -0600 MDT m=+737.107376830]) -2019/06/14 13:47:41 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:39.73534806 -0600 MDT m=+737.107376830] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:41.333835964 -0600 MDT m=+738.705864712]) -2019/06/14 13:47:42 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:41.333835964 -0600 MDT m=+738.705864712] == [bid:$8,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:42.926327488 -0600 MDT m=+740.298356250]) -2019/06/14 13:47:44 true = ([bid:$8,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:42.926327488 -0600 MDT m=+740.298356250] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:44.493785479 -0600 MDT m=+741.865814216]) -2019/06/14 13:47:46 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:44.493785479 -0600 MDT m=+741.865814216] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:46.092736556 -0600 MDT m=+743.464765324]) -2019/06/14 13:47:47 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:46.092736556 -0600 MDT m=+743.464765324] == [bid:$9,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:47.67597531 -0600 MDT m=+745.048004045]) -2019/06/14 13:47:49 true = ([bid:$9,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:47.67597531 -0600 MDT m=+745.048004045] == [bid:$9,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:49.283213406 -0600 MDT m=+746.655242158]) -2019/06/14 13:47:50 true = ([bid:$9,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:49.283213406 -0600 MDT m=+746.655242158] == [bid:$9,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:50.867335397 -0600 MDT m=+748.239364160]) -2019/06/14 13:47:52 true = ([bid:$9,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:50.867335397 -0600 MDT m=+748.239364160] == [bid:$9,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:52.436153467 -0600 MDT m=+749.808182224]) -2019/06/14 13:47:54 true = ([bid:$9,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:52.436153467 -0600 MDT m=+749.808182224] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:54.03762827 -0600 MDT m=+751.409657021]) -2019/06/14 13:47:55 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:54.03762827 -0600 MDT m=+751.409657021] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:55.599953643 -0600 MDT m=+752.971982388]) -2019/06/14 13:47:57 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:55.599953643 -0600 MDT m=+752.971982388] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:57.206392983 -0600 MDT m=+754.578421720]) -2019/06/14 13:47:58 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:57.206392983 -0600 MDT m=+754.578421720] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:58.788865612 -0600 MDT m=+756.160894358]) -2019/06/14 13:48:00 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:47:58.788865612 -0600 MDT m=+756.160894358] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:00.334639215 -0600 MDT m=+757.706667963]) -2019/06/14 13:48:01 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:00.334639215 -0600 MDT m=+757.706667963] == [bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:01.910710068 -0600 MDT m=+759.282738803]) -2019/06/14 13:48:03 true = ([bid:$9,500 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:01.910710068 -0600 MDT m=+759.282738803] == [bid:$9,600 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:03.504547263 -0600 MDT m=+760.876576007]) -2019/06/14 13:48:05 true = ([bid:$9,600 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:03.504547263 -0600 MDT m=+760.876576007] == [bid:$9,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:05.075648795 -0600 MDT m=+762.447677531]) -2019/06/14 13:48:06 true = ([bid:$9,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:05.075648795 -0600 MDT m=+762.447677531] == [bid:$9,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:06.677601587 -0600 MDT m=+764.049630333]) -2019/06/14 13:48:08 true = ([bid:$9,700 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:06.677601587 -0600 MDT m=+764.049630333] == [bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:08.243314838 -0600 MDT m=+765.615343582]) -2019/06/14 13:48:09 true = ([bid:Bid title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:08.243314838 -0600 MDT m=+765.615343582] == [bid:$9,800 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:09.816861858 -0600 MDT m=+767.188890627]) -2019/06/14 13:48:11 true = ([bid:$9,800 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:09.816861858 -0600 MDT m=+767.188890627] == [bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:11.401970852 -0600 MDT m=+768.773999592]) -2019/06/14 13:48:13 true = ([bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:11.401970852 -0600 MDT m=+768.773999592] == [bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:13.385943303 -0600 MDT m=+770.757972044]) -2019/06/14 13:48:15 true = ([bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:13.385943303 -0600 MDT m=+770.757972044] == [bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:15.010900934 -0600 MDT m=+772.382929685]) -2019/06/14 13:48:16 true = ([bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:15.010900934 -0600 MDT m=+772.382929685] == [bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:16.582646794 -0600 MDT m=+773.954675536]) -2019/06/14 13:48:18 true = ([bid:$9,900 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:16.582646794 -0600 MDT m=+773.954675536] == [bid:$10,000 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:18.158918859 -0600 MDT m=+775.530947603]) -2019/06/14 13:48:19 true = ([bid:$10,000 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:18.158918859 -0600 MDT m=+775.530947603] == [bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:19.762418285 -0600 MDT m=+777.134447038]) -2019/06/14 13:48:21 true = ([bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:19.762418285 -0600 MDT m=+777.134447038] == [bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:21.358132544 -0600 MDT m=+778.730161288]) -2019/06/14 13:48:22 true = ([bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:21.358132544 -0600 MDT m=+778.730161288] == [bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:22.960404858 -0600 MDT m=+780.332433601]) -2019/06/14 13:48:24 true = ([bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:22.960404858 -0600 MDT m=+780.332433601] == [bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:24.549422086 -0600 MDT m=+781.921450823]) -2019/06/14 13:48:26 true = ([bid:$10,100 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:24.549422086 -0600 MDT m=+781.921450823] == [bid:$10,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:26.125843233 -0600 MDT m=+783.497871975]) -2019/06/14 13:48:27 true = ([bid:$10,200 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:26.125843233 -0600 MDT m=+783.497871975] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:27.690221589 -0600 MDT m=+785.062250326]) -2019/06/14 13:48:29 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:27.690221589 -0600 MDT m=+785.062250326] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:29.264012162 -0600 MDT m=+786.636040912]) -2019/06/14 13:48:30 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:29.264012162 -0600 MDT m=+786.636040912] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:30.816621488 -0600 MDT m=+788.188650236]) -2019/06/14 13:48:33 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:30.816621488 -0600 MDT m=+788.188650236] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:33.096096709 -0600 MDT m=+790.468125473]) -2019/06/14 13:48:34 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:33.096096709 -0600 MDT m=+790.468125473] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:34.681657183 -0600 MDT m=+792.053685940]) -2019/06/14 13:48:36 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:34.681657183 -0600 MDT m=+792.053685940] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:36.241164634 -0600 MDT m=+793.613193386]) -2019/06/14 13:48:37 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:36.241164634 -0600 MDT m=+793.613193386] == [bid:Bonus title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:37.85757393 -0600 MDT m=+795.229602667]) -2019/06/14 13:48:39 true = ([bid:Bonus title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:37.85757393 -0600 MDT m=+795.229602667] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:39.441577958 -0600 MDT m=+796.813606720]) -2019/06/14 13:48:41 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:39.441577958 -0600 MDT m=+796.813606720] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:41.061072437 -0600 MDT m=+798.433101174]) -2019/06/14 13:48:42 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:41.061072437 -0600 MDT m=+798.433101174] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:42.682457336 -0600 MDT m=+800.054486086]) -2019/06/14 13:48:44 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:42.682457336 -0600 MDT m=+800.054486086] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:44.256806707 -0600 MDT m=+801.628835462]) -2019/06/14 13:48:45 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:44.256806707 -0600 MDT m=+801.628835462] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:45.967221097 -0600 MDT m=+803.339249831]) -2019/06/14 13:48:47 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:45.967221097 -0600 MDT m=+803.339249831] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:47.517339333 -0600 MDT m=+804.889368069]) -2019/06/14 13:48:49 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:47.517339333 -0600 MDT m=+804.889368069] == [bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:49.118780967 -0600 MDT m=+806.490809704]) -2019/06/14 13:48:50 true = ([bid:$10,300 title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:49.118780967 -0600 MDT m=+806.490809704] == [bid:Next Item on title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:50.667028521 -0600 MDT m=+808.039057254]) -2019/06/14 13:48:52 false = ([bid:Next Item on title:2015 JEEP GRAND CHEROKEE OVERLAND watched:false images:4 when:2019-06-14 13:48:50.667028521 -0600 MDT m=+808.039057254] == [bid:$1,650 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:52.297679181 -0600 MDT m=+809.669707932]) -2019/06/14 13:48:54 true = ([bid:$1,650 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:52.994021004 -0600 MDT m=+810.366049754] == [bid:Bid title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:54.583269582 -0600 MDT m=+811.955298323]) -2019/06/14 13:48:56 true = ([bid:Bid title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:54.583269582 -0600 MDT m=+811.955298323] == [bid:$1,700 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:56.181033887 -0600 MDT m=+813.553062652]) -2019/06/14 13:48:57 true = ([bid:$1,700 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:56.181033887 -0600 MDT m=+813.553062652] == [bid:$1,800 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:57.784934977 -0600 MDT m=+815.156963727]) -2019/06/14 13:48:59 true = ([bid:$1,800 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:57.784934977 -0600 MDT m=+815.156963727] == [bid:$1,850 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:59.373646279 -0600 MDT m=+816.745675026]) -2019/06/14 13:49:00 true = ([bid:$1,850 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:48:59.373646279 -0600 MDT m=+816.745675026] == [bid:$1,900 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:49:00.956853996 -0600 MDT m=+818.328882743]) -2019/06/14 13:49:02 true = ([bid:$1,900 title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:49:00.956853996 -0600 MDT m=+818.328882743] == [bid:Bid title:2012 HONDA CIVIC EX watched:false images:4 when:2019-06-14 13:49:02.537892071 -0600 MDT m=+819.909920818]) diff --git a/copart/testdata/sample_auction_live.html.REMOVED.git-id b/copart/testdata/sample_auction_live.html.REMOVED.git-id deleted file mode 100644 index bf93c08..0000000 --- a/copart/testdata/sample_auction_live.html.REMOVED.git-id +++ /dev/null @@ -1 +0,0 @@ -5db6601131524cea2060b504d5bdacd46cd0be1c \ No newline at end of file diff --git a/main.go b/main.go index 770e186..4b286bc 100644 --- a/main.go +++ b/main.go @@ -1,8 +1,9 @@ package main import ( - "local/rssmon3/copart/config" - "local/rssmon3/copart/server" + "local/rssmon2/monitor" + "local/rssmon3/config" + "local/rssmon3/server" "log" "os" "os/signal" @@ -24,12 +25,13 @@ func main() { if err := s.Routes(); err != nil { panic(err) } - go func(c chan os.Signal) { - if err := s.Run(); err != nil { - log.Println(err) - } - c <- syscall.SIGINT - }(sigc) + go InterruptAfter(s.Run, sigc) + + m, err := monitor.New() + if err != nil { + panic(err) + } + go InterruptAfter(m.Run, sigc) signal.Notify(sigc, syscall.SIGHUP, @@ -38,5 +40,13 @@ func main() { syscall.SIGQUIT, ) <-sigc + can() config.Values().DB.Close() } + +func InterruptAfter(foo func() error, c chan os.Signal) { + if err := foo(); err != nil { + log.Println(err) + } + c <- syscall.SIGINT +} diff --git a/monitor/item.go b/monitor/item.go new file mode 100644 index 0000000..41bdf34 --- /dev/null +++ b/monitor/item.go @@ -0,0 +1,124 @@ +package monitor + +import ( + "bytes" + "encoding/gob" + "local/rssmon3/config" + "log" + "time" + + "github.com/golang-collections/go-datastructures/queue" +) + +type Item struct { + Key string +} + +const nsLast = "nsLast" +const nsInterval = "nsInterval" + +var never = time.Date(2999, time.January, 1, 1, 1, 1, 1, time.UTC) +var forever = time.Duration(time.Hour * 99999) + +func NewItem(key string, interval time.Duration) (*Item, error) { + i := &Item{ + Key: key, + } + + if err := i.setInterval(interval); err != nil { + return nil, err + } + if err := i.setLast(time.Now().Add(-2 * interval)); err != nil { + return nil, err + } + + return &Item{ + Key: key, + }, nil +} + +func (i *Item) Compare(other queue.Item) int { + j := other.(*Item) + iNext := i.Last().Add(i.Interval()) + jNext := j.Last().Add(j.Interval()) + if iNext.Before(jNext) { + return 1 + } else if jNext.Before(iNext) { + return -1 + } else { + return 0 + } +} + +func (i *Item) Interval() time.Duration { + t, err := i.getInterval() + if err != nil { + log.Println(err) + return forever + } + return t +} + +func (i *Item) getInterval() (time.Duration, error) { + t := time.Duration(0) + b, err := config.Values().DB.Get(i.Key, nsInterval) + if err != nil { + return forever, err + } + buff := bytes.NewBuffer(b) + dec := gob.NewDecoder(buff) + err = dec.Decode(&t) + return t, err +} + +func (i *Item) setInterval(t time.Duration) error { + buff := bytes.NewBuffer(nil) + enc := gob.NewEncoder(buff) + if err := enc.Encode(t); err != nil { + return err + } + if err := config.Values().DB.Set(i.Key, buff.Bytes(), nsInterval); err != nil { + return err + } + return nil +} + +func (i *Item) Last() time.Time { + t, err := i.getLast() + if err != nil { + log.Println(err) + } + return t +} + +func (i *Item) Mark() { + if err := i.setLast(time.Now()); err != nil { + log.Println(err) + } +} + +func (i *Item) setLast(t time.Time) error { + buff := bytes.NewBuffer(nil) + enc := gob.NewEncoder(buff) + if err := enc.Encode(t); err != nil { + return err + } + if err := config.Values().DB.Set(i.Key, buff.Bytes(), nsLast); err != nil { + return err + } + return nil +} + +func (i *Item) getLast() (time.Time, error) { + t := time.Now() + b, err := config.Values().DB.Get(i.Key, nsLast) + if err != nil { + return never, err + } + buff := bytes.NewBuffer(b) + dec := gob.NewDecoder(buff) + if err := dec.Decode(&t); err != nil { + return never, err + } + return t, nil +} diff --git a/monitor/item_test.go b/monitor/item_test.go new file mode 100644 index 0000000..6ee9315 --- /dev/null +++ b/monitor/item_test.go @@ -0,0 +1,123 @@ +package monitor + +import ( + "local/rssmon3/config" + "os" + "testing" + "time" +) + +func initItem() { + os.Args = []string{"a", "-db", "map"} + if err := config.New(); err != nil { + panic(err) + } +} + +func TestItemNewItem(t *testing.T) { + initItem() + + i, err := NewItem("NewItem", time.Second) + if err != nil { + t.Fatal(err) + } + if i.Key != "NewItem" { + t.Fatal(i.Key) + } +} + +func TestItemCompare(t *testing.T) { + initItem() + + i, _ := NewItem("iCompare", time.Second) + j, _ := NewItem("jCompare", 10*time.Second) + if c := i.Compare(j); c != -1 { + t.Fatal(c) + } + + i, _ = NewItem("iCompare", time.Second) + j, _ = NewItem("iCompare", time.Second) + if c := i.Compare(j); c != 0 { + t.Fatal(c) + } + + i, _ = NewItem("iCompare", 10*time.Second) + j, _ = NewItem("jCompare", time.Second) + if c := i.Compare(j); c != 1 { + t.Fatal(c) + } +} + +func TestItemInterval(t *testing.T) { + initItem() + + i, _ := NewItem("iInterval", 10*time.Second) + if i := i.Interval(); i != 10*time.Second { + t.Fatal(i) + } +} + +func TestItemGetSetInterval(t *testing.T) { + initItem() + + i := &Item{Key: "GetSetInterval"} + + if i, err := i.getInterval(); err == nil { + t.Errorf("get interval of unset passes") + } else if i != forever { + t.Errorf("failing get interval is not forever") + } + + if err := i.setInterval(time.Minute); err != nil { + t.Errorf("failing set interval: %v", err) + } + + if i, err := i.getInterval(); err != nil { + t.Errorf("get interval of set fails: %v", err) + } else if i != time.Minute { + t.Errorf("passing get interval is not time.Minute") + } +} + +func TestItemLastMark(t *testing.T) { + initItem() + + i, _ := NewItem("iLastMark", 100*time.Millisecond) + + first := i.Last() + if first.Sub(time.Now().Add(-100*time.Millisecond)) > time.Millisecond*200 { + t.Errorf("default last is wrong: %v", first) + } + + i.Mark() + second := i.Last() + if first == second { + t.Errorf("mark() didn't change last") + } + if second.Sub(time.Now()) > time.Millisecond*100 { + t.Errorf("marked last is wrong: %v", second) + } +} + +func TestItemGetSetLast(t *testing.T) { + initItem() + + i := &Item{Key: "iGetSetLast"} + + if i, err := i.getLast(); err == nil { + t.Errorf("get last of unset passes") + } else if i != never { + t.Errorf("failing get last is not never") + } + + stamp := time.Now() + if err := i.setLast(stamp); err != nil { + t.Errorf("failing set last: %v", err) + } + + if i, err := i.getLast(); err != nil { + t.Errorf("get last of set fails: %v", err) + } else if i.Sub(stamp) > time.Millisecond*10 { + t.Errorf("passing get last is not %v: got %v (+%v)", stamp, i, i.Sub(stamp)) + } +} diff --git a/monitor/monitor.go b/monitor/monitor.go new file mode 100644 index 0000000..50e5dfb --- /dev/null +++ b/monitor/monitor.go @@ -0,0 +1,67 @@ +package monitor + +import ( + "local/rssmon3/config" + "time" +) + +type Monitor struct { + queue *Queue + Incoming chan *Item + Outgoing chan *Item +} + +func New() *Monitor { + return &Monitor{ + queue: newQueue(), + Incoming: make(chan *Item), + Outgoing: make(chan *Item), + } +} + +func (m *Monitor) Run() error { + for { + select { + case <-m.stopped(): + return nil + case i := <-m.enqueued(): + m.enqueue(i) + continue + case <-m.triggered(): + m.trigger() + } + } +} + +func (m *Monitor) stopped() <-chan struct{} { + return config.Values().Ctx.Done() +} + +func (m *Monitor) enqueued() chan *Item { + return m.Incoming +} + +func (m *Monitor) enqueue(i *Item) { + m.queue.Push(i) +} + +func (m *Monitor) triggered() <-chan time.Time { + if m.queue.Len() < 1 { + return nil + } + top := m.queue.Peek() + if top == nil { + return nil + } + return time.After(time.Until(top.Last().Add(top.Interval()))) +} + +func (m *Monitor) trigger() { + i := m.queue.Pop() + if i == nil { + return + } + m.Outgoing <- i + i.Mark() + m.queue.Push(i) +} diff --git a/monitor/monitor_test.go b/monitor/monitor_test.go new file mode 100644 index 0000000..6f51d16 --- /dev/null +++ b/monitor/monitor_test.go @@ -0,0 +1,110 @@ +package monitor + +import ( + "local/rssmon3/config" + "os" + "testing" + "time" +) + +func initMonitor() { + os.Args = []string{"a", "-db", "map"} + if err := config.New(); err != nil { + panic(err) + } +} + +func TestMonitorNew(t *testing.T) { + initMonitor() + + New() +} + +func TestMonitorTrigger(t *testing.T) { + initMonitor() + + m := New() + i, _ := NewItem("MonitorTrigger", time.Second) + i.setLast(never) + if time.Now().After(i.Last()) { + t.Error(i.Last()) + } + + m.Outgoing = make(chan *Item, 1) + m.queue.Push(i) + m.trigger() + + j := <-m.Outgoing + if i.Key != j.Key { + t.Errorf("popped %v != %v", j, i) + } + if time.Since(j.Last()) > time.Second { + t.Error(j.Last()) + } +} + +func TestMonitorTriggered(t *testing.T) { + initMonitor() + + m := New() + i, _ := NewItem("MonitorTriggered", time.Second) + i.setLast(time.Now().Add(time.Hour * -1)) + m.queue.Push(i) + + start := time.Now() + select { + case <-m.triggered(): + case <-time.After(time.Second): + } + if time.Since(start) > time.Second { + t.Errorf("failed to triggered") + } +} + +func TestMonitorEnqueued(t *testing.T) { + initMonitor() + + m := New() + m.Incoming = make(chan *Item, 1) + m.Incoming <- &Item{Key: "MonitorEnqueued"} + + select { + case i := <-m.enqueued(): + if i.Key != "MonitorEnqueued" { + t.Error(i) + } + case <-time.After(time.Second): + t.Errorf("enqueued didnt pop") + } +} + +func TestMonitorEnqueue(t *testing.T) { + initMonitor() + + m := New() + m.enqueue(nil) + + if m.queue.Len() != 1 { + t.Error(m.queue.Len()) + } +} + +func TestMonitorRun(t *testing.T) { + initMonitor() + + m := New() + m.Outgoing = make(chan *Item, 1) + go m.Run() + defer config.Values().Can() + + i, _ := NewItem("MonitorRun", time.Second*5) + m.Incoming <- i + time.Sleep(time.Millisecond * 250) + for j := 0; j < 5; j++ { + if m.queue.Len() == 1 { + return + } + time.Sleep(time.Millisecond * 10) + } + t.Errorf("incoming item didnt enter/reenter queue") +} diff --git a/monitor/queue.go b/monitor/queue.go new file mode 100644 index 0000000..286978f --- /dev/null +++ b/monitor/queue.go @@ -0,0 +1,43 @@ +package monitor + +import "github.com/golang-collections/go-datastructures/queue" + +type Queue struct { + queue *queue.PriorityQueue +} + +func newQueue() *Queue { + return &Queue{ + queue: queue.NewPriorityQueue(1), + } +} + +func (q *Queue) Push(i *Item) { + q.queue.Put(i) +} + +func (q *Queue) Pop() *Item { + is, err := q.queue.Get(1) + if err != nil { + return nil + } + if len(is) < 1 { + return nil + } + if is[0] == nil { + return nil + } + return is[0].(*Item) +} + +func (q *Queue) Peek() *Item { + i := q.queue.Peek() + if i == nil { + return nil + } + return i.(*Item) +} + +func (q *Queue) Len() int { + return q.queue.Len() +} diff --git a/monitor/queue_test.go b/monitor/queue_test.go new file mode 100644 index 0000000..167d7f7 --- /dev/null +++ b/monitor/queue_test.go @@ -0,0 +1,49 @@ +package monitor + +import ( + "testing" + "time" +) + +func initQueue() { + initItem() +} + +func TestQueue(t *testing.T) { + initQueue() + + q := newQueue() + + if i := q.Peek(); i != nil { + t.Error(i) + } + + i := &Item{Key: "k"} + q.Push(i) + + if i := q.Peek(); i.Key != "k" { + t.Error(i) + } else if j := q.Pop(); i != j { + t.Error(j) + } else if j.Key != "k" { + t.Error(j) + } +} + +func TestQueuePriority(t *testing.T) { + initQueue() + + q := newQueue() + + i, _ := NewItem("iQueuePriority", time.Second) + j, _ := NewItem("jQueuePriority", time.Hour) + q.Push(i) + q.Push(j) + if k := q.Peek(); k.Key != "iQueuePriority" { + t.Errorf("compare is backwards") + } + + if q.Len() != 2 { + t.Error(q.Len()) + } +} diff --git a/server/.routes_test.go.swp b/server/.routes_test.go.swp deleted file mode 100644 index edede51..0000000 Binary files a/server/.routes_test.go.swp and /dev/null differ diff --git a/server/new_test.go b/server/new_test.go index 5443e24..da51979 100644 --- a/server/new_test.go +++ b/server/new_test.go @@ -8,6 +8,7 @@ import ( func TestNew(t *testing.T) { os.Setenv("DB", "MAP") + os.Args = []string{"ok"} config.New() New() }