finally re-doing stuff