support nested attributes
lint
style