#include #define rep(i,n) for(int i=0;i<(n);++i) #define all(a) (a).begin(),(a).end() #define dunk(a) cout << (a) << endl using namespace std; typedef long long ll; int main() { ios::sync_with_stdio(false); cin.tie(0); int n, m; cin >> n >> m; map, bool> road; rep(i, m) { int a, b; cin >> a >> b; road[make_pair(a, b)] = true; road[make_pair(b, a)] = true; } //0-indexed int ans = 0; rep(i, n)rep(j, n)rep(k, n)rep(l, n) { if (i == j) continue; if (i == k) continue; if (i == l) continue; if (j == k) continue; if (l == j) continue; if (l == k) continue; if (road[make_pair(i, j)] && road[make_pair(j, k)] && road[make_pair(k, l)] && road[make_pair(l, i)] && !(road[make_pair(i, k)]) && !(road[make_pair(j, l)])) ans++; } dunk(ans / 8); return 0; }