use fancy D method attributes