add __getitem_by_hash__