rewote some stuff.. wip... nar