extend core class itself