add typing to attrs and values