refactoring
add poem model