In true Rust novice fashion, I lean on a lot of clones - the hoops i jump through to abstract out the button logic is a good example.