more elegant struct faking