reference() method added to make it extensible