init
restruct
moved stuff