poly, inheritance, virtual, start