add attribute handlers