Working, but still lots of missing rules. Do not scale well.