snyggat till vissa lösningar och kommenterat