slightly modify boilerplate for an object per pin