better structure, added jquery