added link struct