datasource improvements
added Card struct
language dir state