attribute handling added