library GreeterLib { struct Greeting { bytes32 greeting; uint count; address[] greeted; } function greet(Greeting storage self, address who) public returns (bytes32) { self.count += 1; self.greeted.push(who); return self.greeting; } }