strange init methods
add files