faster and cleaner element render but element tricky