Added *, ?, +
Refactored layout