revised modeling, not yet fileio