some optimize & graphs