need to fix this terrible thing
first write