package Ġusing . libs Ċ Ċ import Ġlib 2 . extend Base Ċ Ċ // check Ġthat Ġreferences Ġto Ġlib 1 Ġentities Ġobtained Ġthrough Ġlib 2 Ġare Ġvalid Ċ fun Ġmain () Ġ{ ĊĠĠĠ Ġlib 1 . accept Base ( lib 1 . Base ()) ĊĠĠĠ Ġlib 2 . accept Base ( lib 1 . Base ()) ĊĠĠĠ Ġlib 2 . accept Base ( lib 2 . Derived ()) ĊĠĠĠ Ġlib 1 . accept Base ( lib 2 . Derived ()) ĊĠĠĠ Ġlib 1 . accept Base ( lib 2 . return Base ()) ĊĠĠĠ Ġlib 1 . Base (). extend Base () ĊĠĠĠ Ġlib 1 . Base (). base Fun () ĊĠĠĠ Ġlib 2 . Derived (). base Fun () ĊĠĠĠ Ġlib 2 . Derived (). derived Fun () Ċ }