implement array(wip). restrict parameter attributes.