fiddling with constructors because nobody cares yet