update to duck typing post