···175175/// # async fn main() {
176176/// use allegedly::{ExportPage, Op, poll_upstream};
177177///
178178-/// // set to `None` to replay from the beginning of the PLC history
179178/// let after = Some(chrono::Utc::now());
180180-///
181181-/// // the PLC server to poll for new ops
182179/// let upstream = "https://plc.wtf/export".parse().unwrap();
183183-///
184184-/// // self-rate-limit (plc.directory's limit interval is 600ms)
185180/// let throttle = std::time::Duration::from_millis(300);
186181///
187187-/// // pages are sent out of the poller via a tokio mpsc channel
188182/// let (tx, mut rx) = tokio::sync::mpsc::channel(1);
189189-///
190190-/// // spawn a tokio task to run the poller
191183/// tokio::task::spawn(poll_upstream(after, upstream, throttle, tx));
192184///
193193-/// // receive pages of plc ops from the poller
194185/// while let Some(ExportPage { ops }) = rx.recv().await {
195186/// println!("received {} plc ops", ops.len());
196187///